function drawHI(ctx, fillStyle)
{
	/* State: HI */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(233.08751,519.30948);
	ctx.lineTo(235.02744,515.75293);
	ctx.lineTo(237.2907,515.42961);
	ctx.lineTo(237.61402,516.23791);
	ctx.lineTo(235.51242,519.30948);

	ctx.moveTo(243.27217,515.59127);
	ctx.lineTo(249.4153,518.17784);
	ctx.lineTo(251.51689,517.85452);
	ctx.lineTo(253.1335,513.97465);
	ctx.lineTo(252.48686,510.57977);
	ctx.lineTo(248.28366,510.09479);
	ctx.lineTo(244.24213,511.87306);

	ctx.moveTo(273.9878,525.61427);
	ctx.lineTo(277.706,531.11074);
	ctx.lineTo(280.13092,530.78742);
	ctx.lineTo(281.26255,530.30244);
	ctx.lineTo(282.7175,531.59573);
	ctx.lineTo(286.43571,531.43407);
	ctx.lineTo(287.40568,529.97912);
	ctx.lineTo(284.49577,528.20085);
	ctx.lineTo(282.55584,524.48263);
	ctx.lineTo(280.45424,520.92609);
	ctx.lineTo(274.63444,523.83599);

	ctx.moveTo(294.19545,534.50564);
	ctx.lineTo(295.48874,532.5657);
	ctx.lineTo(300.17691,533.53566);
	ctx.lineTo(300.82356,533.05068);
	ctx.lineTo(306.96668,533.69732);
	ctx.lineTo(306.64336,534.99062);
	ctx.lineTo(304.05678,536.44556);
	ctx.lineTo(299.69193,536.12224);

	ctx.moveTo(299.53027,539.67879);
	ctx.lineTo(301.47021,543.55866);
	ctx.lineTo(304.54176,542.42703);
	ctx.lineTo(304.86509,540.81041);
	ctx.lineTo(303.24848,538.70882);
	ctx.lineTo(299.53027,538.3855);

	ctx.moveTo(306.4817,538.54716);
	ctx.lineTo(308.74496,535.63726);
	ctx.lineTo(313.43313,538.06218);
	ctx.lineTo(317.79798,539.19381);
	ctx.lineTo(322.16284,541.94205);
	ctx.lineTo(322.16284,543.88198);
	ctx.lineTo(318.6063,545.66026);
	ctx.lineTo(313.75645,546.63022);
	ctx.lineTo(311.33154,545.17527);

	ctx.moveTo(323.13281,554.06663);
	ctx.lineTo(324.74942,552.77335);
	ctx.lineTo(328.14431,554.38997);
	ctx.lineTo(335.74238,557.94651);
	ctx.lineTo(339.13727,560.0481);
	ctx.lineTo(340.75387,562.47302);
	ctx.lineTo(342.69381,566.83787);
	ctx.lineTo(346.73534,569.42445);
	ctx.lineTo(346.41202,570.71775);
	ctx.lineTo(342.53215,573.95097);
	ctx.lineTo(338.32896,575.40592);
	ctx.lineTo(336.87401,574.75928);
	ctx.lineTo(333.80244,576.53754);
	ctx.lineTo(331.37753,579.77077);
	ctx.lineTo(329.11427,582.68067);
	ctx.lineTo(327.33599,582.51901);
	ctx.lineTo(323.77945,579.93243);
	ctx.lineTo(323.45613,575.40592);
	ctx.lineTo(324.10277,572.981);
	ctx.lineTo(322.48616,567.32286);
	ctx.lineTo(320.38456,565.54458);
	ctx.lineTo(320.2229,562.958);
	ctx.lineTo(322.48616,561.98804);
	ctx.lineTo(324.58776,558.91648);
	ctx.lineTo(325.07274,557.94651);
	ctx.lineTo(323.45613,556.16823);
	ctx.fill();
	ctx.stroke();
}

function drawAK(ctx, fillStyle)
{
	/* State: AK */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(158.07671,453.67502);
	ctx.lineTo(157.75339,539.03215);
	ctx.lineTo(159.36999,540.00211);
	ctx.lineTo(162.44156,540.16377);
	ctx.lineTo(163.8965,539.03215);
	ctx.lineTo(166.48308,539.03215);
	ctx.lineTo(166.64475,541.94205);
	ctx.lineTo(173.59618,548.73182);
	ctx.lineTo(174.08117,551.3184);
	ctx.lineTo(177.47605,549.37846);
	ctx.lineTo(178.1227,549.2168);
	ctx.lineTo(178.44602,546.14524);
	ctx.lineTo(179.90096,544.52863);
	ctx.lineTo(181.0326,544.36697);
	ctx.lineTo(182.97253,542.91201);
	ctx.lineTo(186.04409,545.01361);
	ctx.lineTo(186.69074,547.92352);
	ctx.lineTo(188.63067,549.05514);
	ctx.lineTo(189.7623,551.48006);
	ctx.lineTo(193.64218,553.25833);
	ctx.lineTo(197.03706,559.2398);
	ctx.lineTo(199.78529,563.11966);
	ctx.lineTo(202.04855,565.86791);
	ctx.lineTo(203.50351,569.58611);
	ctx.lineTo(208.515,571.36439);
	ctx.lineTo(213.68817,573.46598);
	ctx.lineTo(214.65813,577.83084);
	ctx.lineTo(215.14311,580.9024);
	ctx.lineTo(214.17315,584.29729);
	ctx.lineTo(212.39487,586.56054);
	ctx.lineTo(210.77826,585.75224);
	ctx.lineTo(209.32331,582.68067);
	ctx.lineTo(206.57507,581.22573);
	ctx.lineTo(204.7968,580.09409);
	ctx.lineTo(203.98849,580.9024);
	ctx.lineTo(205.44344,583.65065);
	ctx.lineTo(205.6051,587.36885);
	ctx.lineTo(204.47347,587.85383);
	ctx.lineTo(202.53354,585.9139);
	ctx.lineTo(200.43195,584.62061);
	ctx.lineTo(200.91693,586.23722);
	ctx.lineTo(202.21021,588.0155);
	ctx.lineTo(201.40191,588.8238);
	ctx.bezierCurveTo(201.40191,588.8238,200.59361,588.50048,200.10863,587.85383)
	ctx.bezierCurveTo(199.62363,587.20719,198.00703,584.45895,198.00703,584.45895)
	ctx.lineTo(197.03706,582.19569);
	ctx.bezierCurveTo(197.03706,582.19569,196.71374,583.48898,196.06709,583.16565)
	ctx.bezierCurveTo(195.42044,582.84233,194.7738,581.71071,194.7738,581.71071)
	ctx.lineTo(196.55207,579.77077);
	ctx.lineTo(195.09712,578.31582);
	ctx.lineTo(195.09712,573.30432);
	ctx.lineTo(194.28882,573.30432);
	ctx.lineTo(193.48052,576.6992);
	ctx.lineTo(192.34888,577.1842);
	ctx.lineTo(191.37892,573.46598);
	ctx.lineTo(190.73227,569.74777);
	ctx.lineTo(189.92396,569.26279);
	ctx.lineTo(190.24729,574.92094);
	ctx.lineTo(190.24729,576.05256);
	ctx.lineTo(188.79233,574.75928);
	ctx.lineTo(185.23579,568.77781);
	ctx.lineTo(183.13419,568.29283);
	ctx.lineTo(182.48755,564.57462);
	ctx.lineTo(180.87094,561.66472);
	ctx.lineTo(179.25432,560.53308);
	ctx.lineTo(179.25432,558.26983);
	ctx.lineTo(181.35592,556.97654);
	ctx.lineTo(180.87094,556.65322);
	ctx.lineTo(178.28436,557.29986);
	ctx.lineTo(174.88947,554.87495);
	ctx.lineTo(172.30289,551.96504);
	ctx.lineTo(167.45306,549.37846);
	ctx.lineTo(163.41152,546.79188);
	ctx.lineTo(164.70482,543.55866);
	ctx.lineTo(164.70482,541.94205);
	ctx.lineTo(162.92654,543.55866);
	ctx.lineTo(160.01664,544.69029);
	ctx.lineTo(156.29843,543.55866);
	ctx.lineTo(150.64028,541.13375);
	ctx.lineTo(145.14381,541.13375);
	ctx.lineTo(144.49717,541.61873);
	ctx.lineTo(138.03072,537.73885);
	ctx.lineTo(135.92912,537.41553);
	ctx.lineTo(133.18088,531.59573);
	ctx.lineTo(129.62433,531.91905);
	ctx.lineTo(126.06778,533.374);
	ctx.lineTo(126.55277,537.90052);
	ctx.lineTo(127.68439,534.99062);
	ctx.lineTo(128.65437,535.31394);
	ctx.lineTo(127.19941,539.67879);
	ctx.lineTo(130.43263,536.93055);
	ctx.lineTo(131.07928,538.54716);
	ctx.lineTo(127.19941,542.91201);
	ctx.lineTo(125.90612,542.58869);
	ctx.lineTo(125.42114,540.64875);
	ctx.lineTo(124.12785,539.84045);
	ctx.lineTo(122.83456,540.97208);
	ctx.lineTo(120.08632,539.19381);
	ctx.lineTo(117.01475,541.29541);
	ctx.lineTo(115.23649,543.397);
	ctx.lineTo(111.8416,545.4986);
	ctx.lineTo(107.15342,545.33693);
	ctx.lineTo(106.66844,543.23534);
	ctx.lineTo(110.38664,542.58869);
	ctx.lineTo(110.38664,541.29541);
	ctx.lineTo(108.12338,540.64875);
	ctx.lineTo(109.09336,538.22384);
	ctx.lineTo(111.35661,534.34397);
	ctx.lineTo(111.35661,532.5657);
	ctx.lineTo(111.51827,531.75739);
	ctx.lineTo(115.88313,529.49413);
	ctx.lineTo(116.85309,530.78742);
	ctx.lineTo(119.60134,530.78742);
	ctx.lineTo(118.30805,528.20085);
	ctx.lineTo(114.58983,527.87752);
	ctx.lineTo(109.57834,530.62576);
	ctx.lineTo(107.15342,534.02064);
	ctx.lineTo(105.37515,536.60723);
	ctx.lineTo(104.24352,538.87049);
	ctx.lineTo(100.04033,540.32543);
	ctx.lineTo(96.96876,542.91201);
	ctx.lineTo(96.645439,544.52863);
	ctx.lineTo(98.908696,545.4986);
	ctx.lineTo(99.717009,547.60018);
	ctx.lineTo(96.96876,550.83341);
	ctx.lineTo(90.502321,555.03661);
	ctx.lineTo(82.742574,559.2398);
	ctx.lineTo(80.640977,560.37142);
	ctx.lineTo(75.306159,561.50306);
	ctx.lineTo(69.971333,563.76631);
	ctx.lineTo(71.749608,565.0596);
	ctx.lineTo(70.294654,566.51455);
	ctx.lineTo(69.809672,567.64618);
	ctx.lineTo(67.061434,566.67621);
	ctx.lineTo(63.828214,566.83787);
	ctx.lineTo(63.019902,569.10113);
	ctx.lineTo(62.049939,569.10113);
	ctx.lineTo(62.37326,566.67621);
	ctx.lineTo(58.816709,567.96951);
	ctx.lineTo(55.90681,568.93947);
	ctx.lineTo(52.511924,567.64618);
	ctx.lineTo(49.602023,569.58611);
	ctx.lineTo(46.368799,569.58611);
	ctx.lineTo(44.267202,570.87941);
	ctx.lineTo(42.65059,571.68771);
	ctx.lineTo(40.548995,571.36439);
	ctx.lineTo(37.962415,570.23276);
	ctx.lineTo(35.699158,570.87941);
	ctx.lineTo(34.729191,571.84937);
	ctx.lineTo(33.112578,570.71775);
	ctx.lineTo(33.112578,568.77781);
	ctx.lineTo(36.184142,567.48452);
	ctx.lineTo(42.488929,568.13117);
	ctx.lineTo(46.853782,566.51455);
	ctx.lineTo(48.955378,564.41296);
	ctx.lineTo(51.86528,563.76631);
	ctx.lineTo(53.643553,562.958);
	ctx.lineTo(56.391794,563.11966);
	ctx.lineTo(58.008406,564.41296);
	ctx.lineTo(58.978369,564.08964);
	ctx.lineTo(61.241626,561.3414);
	ctx.lineTo(64.313196,560.37142);
	ctx.lineTo(67.708076,559.72478);
	ctx.lineTo(69.00137,559.40146);
	ctx.lineTo(69.648012,559.88644);
	ctx.lineTo(70.456324,559.88644);
	ctx.lineTo(71.749608,556.16823);
	ctx.lineTo(75.791141,554.71329);
	ctx.lineTo(77.731077,550.99508);
	ctx.lineTo(79.994336,546.46856);
	ctx.lineTo(81.610951,545.01361);
	ctx.lineTo(81.934272,542.42703);
	ctx.lineTo(80.317657,543.72032);
	ctx.lineTo(76.922764,544.36697);
	ctx.lineTo(76.276122,541.94205);
	ctx.lineTo(74.982838,541.61873);
	ctx.lineTo(74.012865,542.58869);
	ctx.lineTo(73.851205,545.4986);
	ctx.lineTo(72.39625,545.33693);
	ctx.lineTo(70.941306,539.51713);
	ctx.lineTo(69.648012,540.81041);
	ctx.lineTo(68.516388,540.32543);
	ctx.lineTo(68.193068,538.3855);
	ctx.lineTo(64.151535,538.54716);
	ctx.lineTo(62.049939,539.67879);
	ctx.lineTo(59.463361,539.35547);
	ctx.lineTo(60.918305,537.90052);
	ctx.lineTo(61.403286,535.31394);
	ctx.lineTo(60.756645,533.374);
	ctx.lineTo(62.211599,532.40404);
	ctx.lineTo(63.504883,532.24238);
	ctx.lineTo(62.858241,530.4641);
	ctx.lineTo(62.858241,526.09925);
	ctx.lineTo(61.888278,525.12928);
	ctx.lineTo(61.079966,526.58423);
	ctx.lineTo(54.936843,526.58423);
	ctx.lineTo(53.481892,525.29094);
	ctx.lineTo(52.835247,521.41108);
	ctx.lineTo(50.733651,517.85452);
	ctx.lineTo(50.733651,516.88456);
	ctx.lineTo(52.835247,516.07625);
	ctx.lineTo(52.996908,513.97465);
	ctx.lineTo(54.128536,512.84303);
	ctx.lineTo(53.320231,512.35805);
	ctx.lineTo(52.026941,512.84303);
	ctx.lineTo(50.895313,510.09479);
	ctx.lineTo(51.86528,505.08328);
	ctx.lineTo(56.391794,501.85007);
	ctx.lineTo(58.978369,500.23345);
	ctx.lineTo(60.918305,496.51525);
	ctx.lineTo(63.666554,495.22195);
	ctx.lineTo(66.253132,496.35359);
	ctx.lineTo(66.576453,498.77851);
	ctx.lineTo(69.00137,498.45517);
	ctx.lineTo(72.23459,496.03026);
	ctx.lineTo(73.851205,496.67691);
	ctx.lineTo(74.821167,497.32355);
	ctx.lineTo(76.437782,497.32355);
	ctx.lineTo(78.701041,496.03026);
	ctx.lineTo(79.509354,491.6654);
	ctx.bezierCurveTo(79.509354,491.6654,79.832675,488.75551,80.479317,488.27052)
	ctx.bezierCurveTo(81.125959,487.78554,81.44928,487.30056,81.44928,487.30056)
	ctx.lineTo(80.317657,485.36062);
	ctx.lineTo(77.731077,486.16893);
	ctx.lineTo(74.497847,486.97723);
	ctx.lineTo(72.557911,486.49225);
	ctx.lineTo(69.00137,484.71397);
	ctx.lineTo(63.989875,484.55231);
	ctx.lineTo(60.433324,480.83411);
	ctx.lineTo(60.918305,476.95424);
	ctx.lineTo(61.564957,474.52932);
	ctx.lineTo(59.463361,472.75105);
	ctx.lineTo(57.523423,469.03283);
	ctx.lineTo(58.008406,468.22453);
	ctx.lineTo(64.798177,467.73955);
	ctx.lineTo(66.899773,467.73955);
	ctx.lineTo(67.869736,468.70951);
	ctx.lineTo(68.516388,468.70951);
	ctx.lineTo(68.354728,467.0929);
	ctx.lineTo(72.23459,466.44626);
	ctx.lineTo(74.821167,466.76958);
	ctx.lineTo(76.276122,467.90121);
	ctx.lineTo(74.821167,470.00281);
	ctx.lineTo(74.336186,471.45775);
	ctx.lineTo(77.084435,473.07437);
	ctx.lineTo(82.095932,474.85264);
	ctx.lineTo(83.874208,473.88268);
	ctx.lineTo(81.610951,469.51783);
	ctx.lineTo(80.640977,466.2846);
	ctx.lineTo(81.610951,465.47629);
	ctx.lineTo(78.21606,463.53636);
	ctx.lineTo(77.731077,462.40472);
	ctx.lineTo(78.21606,460.78812);
	ctx.lineTo(77.407756,456.90825);
	ctx.lineTo(74.497847,452.22007);
	ctx.lineTo(72.072929,448.01688);
	ctx.lineTo(74.982838,446.07694);
	ctx.lineTo(78.21606,446.07694);
	ctx.lineTo(79.994336,446.72359);
	ctx.lineTo(84.197528,446.56193);
	ctx.lineTo(87.915733,443.00539);
	ctx.lineTo(89.047366,439.93382);
	ctx.lineTo(92.765578,437.5089);
	ctx.lineTo(94.382182,438.47887);
	ctx.lineTo(97.130421,437.83222);
	ctx.lineTo(100.84863,435.73062);
	ctx.lineTo(101.98027,435.56896);
	ctx.lineTo(102.95023,436.37728);
	ctx.lineTo(107.47674,436.21561);
	ctx.lineTo(110.22498,433.14405);
	ctx.lineTo(111.35661,433.14405);
	ctx.lineTo(114.91316,435.56896);
	ctx.lineTo(116.85309,437.67056);
	ctx.lineTo(116.36811,438.80219);
	ctx.lineTo(117.01475,439.93382);
	ctx.lineTo(118.63137,438.31721);
	ctx.lineTo(122.51124,438.64053);
	ctx.lineTo(122.83456,442.35873);
	ctx.lineTo(124.7745,443.81369);
	ctx.lineTo(131.88759,444.46033);
	ctx.lineTo(138.19238,448.66352);
	ctx.lineTo(139.64732,447.69356);
	ctx.lineTo(144.82049,450.28014);
	ctx.lineTo(146.92208,449.6335);
	ctx.lineTo(148.86202,448.82518);
	ctx.lineTo(153.71185,450.76512);
	ctx.lineTo(158.07671,453.67502);

	ctx.moveTo(42.973913,482.61238);
	ctx.lineTo(45.075509,487.9472);
	ctx.lineTo(44.913847,488.91717);
	ctx.lineTo(42.003945,488.59384);
	ctx.lineTo(40.225672,484.55231);
	ctx.lineTo(38.447399,483.09737);
	ctx.lineTo(36.02248,483.09737);
	ctx.lineTo(35.86082,480.51078);
	ctx.lineTo(37.639093,478.08586);
	ctx.lineTo(38.770722,480.51078);
	ctx.lineTo(40.225672,481.96573);

	ctx.moveTo(40.387333,516.07625);
	ctx.lineTo(44.105542,516.88456);
	ctx.lineTo(47.823749,517.85452);
	ctx.lineTo(48.632056,518.8245);
	ctx.lineTo(47.015444,522.5427);
	ctx.lineTo(43.94388,522.38104);
	ctx.lineTo(40.548995,518.8245);

	ctx.moveTo(19.694697,502.01173);
	ctx.lineTo(20.826327,504.5983);
	ctx.lineTo(21.957955,506.21492);
	ctx.lineTo(20.826327,507.02322);
	ctx.lineTo(18.72473,503.95166);
	ctx.lineTo(18.72473,502.01173);

	ctx.moveTo(5.9534943,575.0826);
	ctx.lineTo(9.3483796,572.81934);
	ctx.lineTo(12.743265,571.84937);
	ctx.lineTo(15.329845,572.17269);
	ctx.lineTo(15.814828,573.7893);
	ctx.lineTo(17.754763,574.27429);
	ctx.lineTo(19.694697,572.33436);
	ctx.lineTo(19.371375,570.71775);
	ctx.lineTo(22.119616,570.0711);
	ctx.lineTo(25.029518,572.65768);
	ctx.lineTo(23.897889,574.43595);
	ctx.lineTo(19.533037,575.56758);
	ctx.lineTo(16.784795,575.0826);
	ctx.lineTo(13.066588,573.95097);
	ctx.lineTo(8.7017347,575.40592);
	ctx.lineTo(7.0851227,575.72924);

	ctx.moveTo(54.936843,570.55609);
	ctx.lineTo(56.553455,572.49602);
	ctx.lineTo(58.655048,570.87941);
	ctx.lineTo(57.2001,569.58611);

	ctx.moveTo(57.846745,573.62764);
	ctx.lineTo(58.978369,571.36439);
	ctx.lineTo(61.079966,571.68771);
	ctx.lineTo(60.271663,573.62764);

	ctx.moveTo(81.44928,571.68771);
	ctx.lineTo(82.904234,573.46598);
	ctx.lineTo(83.874208,572.33436);
	ctx.lineTo(83.065895,570.39442);

	ctx.moveTo(90.17899,559.2398);
	ctx.lineTo(91.310623,565.0596);
	ctx.lineTo(94.220522,565.86791);
	ctx.lineTo(99.232017,562.958);
	ctx.lineTo(103.59687,560.37142);
	ctx.lineTo(101.98027,557.94651);
	ctx.lineTo(102.46525,555.52159);
	ctx.lineTo(100.36365,556.81488);
	ctx.lineTo(97.453752,556.00657);
	ctx.lineTo(99.070357,554.87495);
	ctx.lineTo(101.01029,555.68325);
	ctx.lineTo(104.89016,553.90497);
	ctx.lineTo(105.37515,552.45003);
	ctx.lineTo(102.95023,551.64172);
	ctx.lineTo(103.75853,549.70178);
	ctx.lineTo(101.01029,551.64172);
	ctx.lineTo(96.322118,555.19827);
	ctx.lineTo(91.472284,558.10817);

	ctx.moveTo(132.53423,539.35547);
	ctx.lineTo(134.95915,537.90052);
	ctx.lineTo(133.98918,536.12224);
	ctx.lineTo(132.21091,537.09221);
	ctx.fill();
	ctx.stroke();
}

function drawFL(ctx, fillStyle)
{
	/* State: FL */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(755.39728,445.50676);
	ctx.lineTo(757.66294,452.82536);
	ctx.lineTo(761.39264,462.56762);
	ctx.lineTo(766.72743,471.94392);
	ctx.lineTo(770.44562,478.24868);
	ctx.lineTo(775.29544,483.74514);
	ctx.lineTo(779.33695,487.46333);
	ctx.lineTo(780.95355,490.37322);
	ctx.lineTo(779.82193,491.6665);
	ctx.lineTo(779.01363,492.95978);
	ctx.lineTo(781.92351,500.39617);
	ctx.lineTo(784.8334,503.30605);
	ctx.lineTo(787.41997,508.64085);
	ctx.lineTo(790.9765,514.46063);
	ctx.lineTo(795.50299,522.70531);
	ctx.lineTo(796.79628,530.30335);
	ctx.lineTo(797.28126,542.26623);
	ctx.lineTo(797.9279,544.04449);
	ctx.lineTo(797.60458,547.43936);
	ctx.lineTo(795.17967,548.73265);
	ctx.lineTo(795.50299,550.67257);
	ctx.lineTo(794.85635,552.6125);
	ctx.lineTo(795.17967,555.0374);
	ctx.lineTo(795.66465,556.97733);
	ctx.lineTo(792.91643,560.21054);
	ctx.lineTo(789.84488,561.66548);
	ctx.lineTo(785.96503,561.82714);
	ctx.lineTo(784.51008,563.44375);
	ctx.lineTo(782.08518,564.41371);
	ctx.lineTo(780.79189,563.92873);
	ctx.lineTo(779.66027,562.95877);
	ctx.lineTo(779.33695,560.04888);
	ctx.lineTo(778.52864,556.65401);
	ctx.lineTo(775.13377,551.48087);
	ctx.lineTo(771.57724,549.21763);
	ctx.lineTo(767.69739,548.89431);
	ctx.lineTo(766.88909,550.18759);
	ctx.lineTo(763.81754,545.82276);
	ctx.lineTo(763.1709,542.26623);
	ctx.lineTo(760.58433,538.22472);
	ctx.lineTo(758.80607,537.09309);
	ctx.lineTo(757.18946,539.19468);
	ctx.lineTo(755.4112,538.87136);
	ctx.lineTo(753.30961,533.85988);
	ctx.lineTo(750.39972,529.98003);
	ctx.lineTo(747.48983,524.64524);
	ctx.lineTo(744.90327,521.57369);
	ctx.lineTo(741.34674,517.8555);
	ctx.lineTo(743.44832,515.43059);
	ctx.lineTo(746.68153,509.93413);
	ctx.lineTo(746.51987,508.31753);
	ctx.lineTo(741.99338,507.34757);
	ctx.lineTo(740.37677,507.99421);
	ctx.lineTo(740.7001,508.64085);
	ctx.lineTo(743.28666,509.61081);
	ctx.lineTo(741.83172,514.13731);
	ctx.lineTo(741.02342,514.62229);
	ctx.lineTo(739.24515,510.58078);
	ctx.lineTo(737.95187,505.73096);
	ctx.lineTo(737.62855,502.98273);
	ctx.lineTo(739.08349,498.29458);
	ctx.lineTo(739.08349,488.75661);
	ctx.lineTo(736.01194,485.03842);
	ctx.lineTo(734.71866,481.96687);
	ctx.lineTo(729.54552,480.67359);
	ctx.lineTo(727.6056,480.02695);
	ctx.lineTo(725.98899,477.44038);
	ctx.lineTo(722.59412,475.82377);
	ctx.lineTo(721.4625,472.4289);
	ctx.lineTo(718.71427,471.45894);
	ctx.lineTo(716.28936,467.74075);
	ctx.lineTo(712.08619,466.28581);
	ctx.lineTo(709.1763,464.83086);
	ctx.lineTo(706.58974,464.83086);
	ctx.lineTo(702.54822,465.63917);
	ctx.lineTo(702.38656,467.57909);
	ctx.lineTo(703.19487,468.54905);
	ctx.lineTo(702.70988,469.68068);
	ctx.lineTo(699.63834,469.51902);
	ctx.lineTo(695.92015,473.07555);
	ctx.lineTo(692.36361,475.01547);
	ctx.lineTo(688.48376,475.01547);
	ctx.lineTo(685.25055,476.30876);
	ctx.lineTo(684.92723,473.56053);
	ctx.lineTo(683.31063,471.6206);
	ctx.lineTo(680.40074,470.48898);
	ctx.lineTo(678.78414,469.03403);
	ctx.lineTo(670.70111,465.15418);
	ctx.lineTo(663.10307,463.37592);
	ctx.lineTo(658.73824,464.02256);
	ctx.lineTo(652.7568,464.50754);
	ctx.lineTo(646.77536,466.60913);
	ctx.lineTo(643.29612,467.22209);
	ctx.lineTo(643.0582,459.17234);
	ctx.lineTo(640.47163,457.23242);
	ctx.lineTo(638.69336,455.45415);
	ctx.lineTo(639.01668,452.38259);
	ctx.lineTo(649.2013,451.08931);
	ctx.lineTo(674.7437,448.17942);
	ctx.lineTo(681.53345,447.53278);
	ctx.lineTo(686.96945,447.81305);
	ctx.lineTo(689.55602,451.69291);
	ctx.lineTo(691.01096,453.14785);
	ctx.lineTo(699.10912,453.66307);
	ctx.lineTo(709.92887,453.01643);
	ctx.lineTo(731.44126,451.72314);
	ctx.lineTo(736.88698,451.04877);
	ctx.lineTo(741.46423,451.0765);
	ctx.lineTo(741.62589,453.98639);
	ctx.lineTo(745.44989,454.79469);
	ctx.lineTo(745.77321,449.98792);
	ctx.lineTo(744.15661,445.46141);
	ctx.lineTo(745.11145,444.72869);
	ctx.lineTo(750.22414,445.18344);

	ctx.moveTo(767.94269,577.91184);
	ctx.lineTo(770.36761,577.2652);
	ctx.lineTo(771.66089,577.02271);
	ctx.lineTo(773.11585,574.67862);
	ctx.lineTo(775.45993,573.06201);
	ctx.lineTo(776.75322,573.547);
	ctx.lineTo(778.45066,573.87032);
	ctx.lineTo(778.85481,574.92111);
	ctx.lineTo(775.37911,576.13357);
	ctx.lineTo(771.17591,577.58852);
	ctx.lineTo(768.83183,578.80098);

	ctx.moveTo(781.44139,572.90035);
	ctx.lineTo(782.65385,573.95115);
	ctx.lineTo(785.40209,571.84956);
	ctx.lineTo(790.7369,567.64637);
	ctx.lineTo(794.4551,563.7665);
	ctx.lineTo(796.96085,557.1384);
	ctx.lineTo(797.93082,555.44096);
	ctx.lineTo(798.09248,552.04608);
	ctx.lineTo(797.365,552.53106);
	ctx.lineTo(796.39504,555.36013);
	ctx.lineTo(794.94008,559.96746);
	ctx.lineTo(791.70686,565.22146);
	ctx.lineTo(787.34202,569.42464);
	ctx.lineTo(783.94714,571.36457);
	ctx.fill();
	ctx.stroke();
}

function drawCA(ctx, fillStyle)
{
	/* State: CA */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(136.74132,386.75359);
	ctx.lineTo(140.5564,386.26497);
	ctx.lineTo(142.04244,384.25353);
	ctx.lineTo(142.77448,382.31244);
	ctx.lineTo(139.59796,382.22232);
	ctx.lineTo(138.49879,380.45929);
	ctx.lineTo(139.27701,378.74462);
	ctx.lineTo(139.23083,372.59378);
	ctx.lineTo(141.44892,371.266);
	ctx.lineTo(144.14622,368.68302);
	ctx.lineTo(144.5573,363.76763);
	ctx.lineTo(146.20382,360.27014);
	ctx.lineTo(148.14711,358.16638);
	ctx.lineTo(151.41598,356.45171);
	ctx.lineTo(152.69537,355.72188);
	ctx.lineTo(153.4516,354.23804);
	ctx.lineTo(152.58327,353.34553);
	ctx.lineTo(151.62262,351.8353);
	ctx.lineTo(150.68615,346.48685);
	ctx.lineTo(147.7822,341.25051);
	ctx.lineTo(147.87926,338.46426);
	ctx.lineTo(145.67843,335.2162);
	ctx.lineTo(130.67947,311.98682);
	ctx.lineTo(111.24655,283.27272);
	ctx.lineTo(88.819562,250.23896);
	ctx.lineTo(76.117107,230.69405);
	ctx.lineTo(77.913818,223.48571);
	ctx.lineTo(84.726337,197.53705);
	ctx.lineTo(92.84244,166.10144);
	ctx.lineTo(80.477041,162.76442);
	ctx.lineTo(66.988306,159.33508);
	ctx.lineTo(54.414067,155.21987);
	ctx.lineTo(46.869522,153.16227);
	ctx.lineTo(35.438394,150.19018);
	ctx.lineTo(28.387579,147.77848);
	ctx.lineTo(26.80746,152.50284);
	ctx.lineTo(26.645799,159.93922);
	ctx.lineTo(21.472664,171.74043);
	ctx.lineTo(18.401116,174.327);
	ctx.lineTo(18.077795,175.45862);
	ctx.lineTo(16.299529,176.26693);
	ctx.lineTo(14.844585,180.4701);
	ctx.lineTo(14.036283,183.70331);
	ctx.lineTo(16.784511,187.90648);
	ctx.lineTo(18.401116,192.10965);
	ctx.lineTo(19.532739,195.66618);
	ctx.lineTo(19.209418,202.1326);
	ctx.lineTo(17.431153,205.20415);
	ctx.lineTo(16.784511,211.02393);
	ctx.lineTo(15.814548,214.74212);
	ctx.lineTo(17.592813,218.62197);
	ctx.lineTo(20.341041,223.14846);
	ctx.lineTo(22.604288,227.99828);
	ctx.lineTo(23.897571,232.03979);
	ctx.lineTo(23.574251,235.273);
	ctx.lineTo(23.25093,235.75798);
	ctx.lineTo(23.25093,237.85956);
	ctx.lineTo(28.909046,244.16432);
	ctx.lineTo(28.424065,246.58923);
	ctx.lineTo(27.777423,248.85248);
	ctx.lineTo(27.130781,250.7924);
	ctx.lineTo(27.292441,259.03709);
	ctx.lineTo(29.394027,262.75528);
	ctx.lineTo(31.333953,265.34184);
	ctx.lineTo(34.082181,265.82683);
	ctx.lineTo(35.052144,268.57505);
	ctx.lineTo(33.920521,272.13158);
	ctx.lineTo(31.818934,273.74819);
	ctx.lineTo(30.687311,273.74819);
	ctx.lineTo(29.879009,277.62804);
	ctx.lineTo(30.36399,280.53793);
	ctx.lineTo(33.5972,284.90276);
	ctx.lineTo(35.213804,290.23756);
	ctx.lineTo(36.668748,294.92571);
	ctx.lineTo(37.962032,297.99726);
	ctx.lineTo(41.356902,303.81704);
	ctx.lineTo(42.811846,306.4036);
	ctx.lineTo(43.296828,309.31349);
	ctx.lineTo(44.913432,310.28345);
	ctx.lineTo(44.913432,312.70836);
	ctx.lineTo(44.10513,314.64829);
	ctx.lineTo(42.326865,321.76135);
	ctx.lineTo(41.841883,323.70127);
	ctx.lineTo(44.266791,326.4495);
	ctx.lineTo(48.469963,326.93448);
	ctx.lineTo(52.996456,328.71275);
	ctx.lineTo(56.876307,330.81433);
	ctx.lineTo(59.786196,330.81433);
	ctx.lineTo(62.696084,333.88588);
	ctx.lineTo(65.282651,338.7357);
	ctx.lineTo(66.414275,340.99894);
	ctx.lineTo(70.294126,343.10053);
	ctx.lineTo(75.14394,343.90883);
	ctx.lineTo(76.598884,346.01042);
	ctx.lineTo(77.245526,349.24363);
	ctx.lineTo(75.790582,349.89027);
	ctx.lineTo(76.113903,350.86023);
	ctx.lineTo(79.347114,351.66853);
	ctx.lineTo(82.095342,351.8302);
	ctx.lineTo(85.005231,356.51835);
	ctx.lineTo(88.885085,360.72152);
	ctx.lineTo(89.693387,362.98477);
	ctx.lineTo(92.279955,367.18794);
	ctx.lineTo(92.603276,370.42115);
	ctx.lineTo(92.603276,379.79746);
	ctx.lineTo(93.088257,381.57572);
	ctx.lineTo(103.11121,383.03067);
	ctx.lineTo(122.83378,385.77889);

	ctx.moveTo(48.793607,337.03691);
	ctx.lineTo(50.086895,338.57269);
	ctx.lineTo(49.925235,339.86598);
	ctx.lineTo(46.692014,339.78515);
	ctx.lineTo(46.1262,338.57269);
	ctx.lineTo(45.479556,337.11774);

	ctx.moveTo(50.733539,337.03691);
	ctx.lineTo(51.945997,336.39027);
	ctx.lineTo(55.50254,338.49186);
	ctx.lineTo(58.5741,339.70431);
	ctx.lineTo(57.684964,340.35097);
	ctx.lineTo(53.158455,340.10847);
	ctx.lineTo(51.541845,338.49186);

	ctx.moveTo(71.426153,356.84039);
	ctx.lineTo(73.204418,359.18447);
	ctx.lineTo(74.012731,360.15444);
	ctx.lineTo(75.54851,360.72025);
	ctx.lineTo(76.114317,359.2653);
	ctx.lineTo(75.144354,357.48703);
	ctx.lineTo(72.476951,355.46627);
	ctx.lineTo(71.426153,355.62793);

	ctx.moveTo(69.971198,365.48925);
	ctx.lineTo(71.749474,368.64164);
	ctx.lineTo(72.961932,370.58158);
	ctx.lineTo(71.506978,370.82406);
	ctx.lineTo(70.213694,369.61161);
	ctx.bezierCurveTo(70.213694,369.61161,69.486217,368.15666,69.486217,367.7525)
	ctx.bezierCurveTo(69.486217,367.34836,69.486217,365.57008,69.486217,365.57008)
	ctx.fill();
	ctx.stroke();
}

function drawSC(ctx, fillStyle)
{
	/* State: SC */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(761.23097,412.93785);
	ctx.lineTo(759.45391,413.90735);
	ctx.lineTo(756.86734,412.61406);
	ctx.lineTo(756.2207,410.51247);
	ctx.lineTo(754.92742,406.95594);
	ctx.lineTo(752.66416,404.85434);
	ctx.lineTo(750.07759,404.2077);
	ctx.lineTo(748.46099,399.35789);
	ctx.lineTo(745.71275,393.37644);
	ctx.lineTo(741.50958,391.4365);
	ctx.lineTo(739.40798,389.49658);
	ctx.lineTo(738.1147,386.91001);
	ctx.lineTo(736.01311,384.97007);
	ctx.lineTo(733.74986,383.67679);
	ctx.lineTo(731.48661,380.7669);
	ctx.lineTo(728.41506,378.50366);
	ctx.lineTo(723.88855,376.72538);
	ctx.lineTo(723.40357,375.27044);
	ctx.lineTo(720.97867,372.36055);
	ctx.lineTo(720.49368,370.90559);
	ctx.lineTo(717.0988,365.73246);
	ctx.lineTo(713.70393,365.89412);
	ctx.lineTo(709.66241,363.4692);
	ctx.lineTo(708.36913,362.17592);
	ctx.lineTo(708.04581,360.39765);
	ctx.lineTo(708.85411,358.45773);
	ctx.lineTo(711.11736,357.48775);
	ctx.lineTo(710.79404,355.38617);
	ctx.lineTo(716.93714,352.7996);
	ctx.lineTo(725.99014,348.2731);
	ctx.lineTo(733.26487,347.46479);
	ctx.lineTo(749.75427,346.97981);
	ctx.lineTo(752.01752,348.91974);
	ctx.lineTo(753.63412,352.15296);
	ctx.lineTo(757.99897,351.66798);
	ctx.lineTo(770.6085,350.21302);
	ctx.lineTo(773.51839,351.02133);
	ctx.lineTo(786.12793,358.61939);
	ctx.lineTo(796.23601,366.74107);
	ctx.lineTo(790.81484,372.19941);
	ctx.lineTo(788.22827,378.34251);
	ctx.lineTo(787.74329,384.64727);
	ctx.lineTo(786.12669,385.45557);
	ctx.lineTo(784.99506,388.2038);
	ctx.lineTo(782.57016,388.85044);
	ctx.lineTo(780.46857,392.40697);
	ctx.lineTo(777.72034,395.1552);
	ctx.lineTo(775.4571,398.55007);
	ctx.lineTo(773.84049,399.35837);
	ctx.lineTo(770.28396,402.75324);
	ctx.lineTo(767.37407,402.9149);
	ctx.lineTo(768.34404,406.14811);
	ctx.lineTo(763.33256,411.64457);
	ctx.fill();
	ctx.stroke();
}

function drawGA(ctx, fillStyle)
{
	/* State: GA */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(689.61648,357.97274);
	ctx.lineTo(684.76666,358.78105);
	ctx.lineTo(676.3603,359.91267);
	ctx.lineTo(667.79229,360.8018);
	ctx.lineTo(667.79229,362.98422);
	ctx.lineTo(667.95395,365.08582);
	ctx.lineTo(668.60059,368.48069);
	ctx.lineTo(671.99547,376.40206);
	ctx.lineTo(674.42038,386.26337);
	ctx.lineTo(675.87532,392.40648);
	ctx.lineTo(677.49193,397.25629);
	ctx.lineTo(678.94688,404.2077);
	ctx.lineTo(681.04847,410.51247);
	ctx.lineTo(683.63504,413.90735);
	ctx.lineTo(684.12002,417.30222);
	ctx.lineTo(686.05995,418.11052);
	ctx.lineTo(686.22161,420.21212);
	ctx.lineTo(684.44334,425.06193);
	ctx.lineTo(683.95836,428.29515);
	ctx.lineTo(683.7967,430.23508);
	ctx.lineTo(685.41331,434.59992);
	ctx.lineTo(685.73663,439.93472);
	ctx.lineTo(684.92832,442.35963);
	ctx.lineTo(685.57497,443.16794);
	ctx.lineTo(687.02992,443.97624);
	ctx.lineTo(687.67656,447.37111);
	ctx.lineTo(690.26313,451.25097);
	ctx.lineTo(691.71807,452.70591);
	ctx.lineTo(699.63945,452.86757);
	ctx.lineTo(710.4592,452.22093);
	ctx.lineTo(731.97159,450.92765);
	ctx.lineTo(737.41731,450.25328);
	ctx.lineTo(741.99456,450.28101);
	ctx.lineTo(742.15622,453.1909);
	ctx.lineTo(744.74279,453.9992);
	ctx.lineTo(745.06611,449.63436);
	ctx.lineTo(743.4495,445.10786);
	ctx.lineTo(744.58113,443.49126);
	ctx.lineTo(750.40091,444.29956);
	ctx.lineTo(755.37832,444.61734);
	ctx.lineTo(754.6029,438.31855);
	ctx.lineTo(756.86614,428.2956);
	ctx.lineTo(758.32109,424.09242);
	ctx.lineTo(757.8361,421.50586);
	ctx.lineTo(761.17051,415.26156);
	ctx.lineTo(760.66021,413.90988);
	ctx.lineTo(758.7468,414.61446);
	ctx.lineTo(756.16024,413.32116);
	ctx.lineTo(755.51359,411.21957);
	ctx.lineTo(754.22031,407.66304);
	ctx.lineTo(751.95705,405.56145);
	ctx.lineTo(749.37049,404.91481);
	ctx.lineTo(747.75388,400.06499);
	ctx.lineTo(744.82887,393.72999);
	ctx.lineTo(740.6257,391.79006);
	ctx.lineTo(738.5241,389.85013);
	ctx.lineTo(737.23081,387.26356);
	ctx.lineTo(735.12923,385.32363);
	ctx.lineTo(732.86598,384.03034);
	ctx.lineTo(730.60273,381.12045);
	ctx.lineTo(727.53118,378.85721);
	ctx.lineTo(723.00467,377.07893);
	ctx.lineTo(722.51969,375.62399);
	ctx.lineTo(720.09478,372.7141);
	ctx.lineTo(719.6098,371.25915);
	ctx.lineTo(716.21492,366.35117);
	ctx.lineTo(712.82005,366.51284);
	ctx.lineTo(708.69014,363.4692);
	ctx.lineTo(707.39686,362.17592);
	ctx.lineTo(707.07354,360.39765);
	ctx.lineTo(707.88184,358.45773);
	ctx.lineTo(710.23348,357.22259);
	ctx.lineTo(709.09954,356.00037);
	ctx.lineTo(709.17743,355.70949);
	ctx.lineTo(703.35764,356.67945);
	ctx.lineTo(696.40623,357.48775);
	ctx.fill();
	ctx.stroke();
}

function drawAL(ctx, fillStyle)
{
	/* State: AL */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(625.59784,466.77079);
	ctx.lineTo(623.98224,451.57429);
	ctx.lineTo(621.234,432.82165);
	ctx.lineTo(621.39566,418.75716);
	ctx.lineTo(622.20396,387.71831);
	ctx.lineTo(622.0423,371.06725);
	ctx.lineTo(622.20739,364.64819);
	ctx.lineTo(629.96369,364.2775);
	ctx.lineTo(657.76933,361.69094);
	ctx.lineTo(666.69187,361.02874);
	ctx.lineTo(666.54407,363.21116);
	ctx.lineTo(666.70573,365.31276);
	ctx.lineTo(667.35238,368.70763);
	ctx.lineTo(670.74726,376.629);
	ctx.lineTo(673.17216,386.49031);
	ctx.lineTo(674.62711,392.63342);
	ctx.lineTo(676.24371,397.48324);
	ctx.lineTo(677.69867,404.43465);
	ctx.lineTo(679.80025,410.73941);
	ctx.lineTo(682.38682,414.1343);
	ctx.lineTo(682.8718,417.52916);
	ctx.lineTo(684.81174,418.33747);
	ctx.lineTo(684.9734,420.43906);
	ctx.lineTo(683.19512,425.28888);
	ctx.lineTo(682.71014,428.5221);
	ctx.lineTo(682.54848,430.46202);
	ctx.lineTo(684.1651,434.82687);
	ctx.lineTo(684.48842,440.16166);
	ctx.lineTo(683.6801,442.58658);
	ctx.lineTo(684.32676,443.39488);
	ctx.lineTo(685.7817,444.20318);
	ctx.lineTo(686.81695,446.73845);
	ctx.lineTo(680.51218,446.73845);
	ctx.lineTo(673.72243,447.3851);
	ctx.lineTo(648.18003,450.29498);
	ctx.lineTo(637.76847,451.70175);
	ctx.lineTo(637.67209,455.45415);
	ctx.lineTo(639.45036,457.23242);
	ctx.lineTo(642.03693,459.17234);
	ctx.lineTo(642.61779,467.10778);
	ctx.lineTo(637.07573,469.68068);
	ctx.lineTo(634.32751,469.35736);
	ctx.lineTo(637.07573,467.41743);
	ctx.lineTo(637.07573,466.44747);
	ctx.lineTo(634.00419,460.46603);
	ctx.lineTo(631.74094,459.81939);
	ctx.lineTo(630.28599,464.18422);
	ctx.lineTo(628.99271,466.93245);
	ctx.lineTo(628.34607,466.77079);
	ctx.fill();
	ctx.stroke();
}

function drawNC(ctx, fillStyle)
{
	/* State: NC */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(832.10653,298.47179);
	ctx.lineTo(833.81653,303.17039);
	ctx.lineTo(837.37306,309.63681);
	ctx.lineTo(839.79796,312.06172);
	ctx.lineTo(840.4446,314.32497);
	ctx.lineTo(838.0197,314.48663);
	ctx.lineTo(838.828,315.13327);
	ctx.lineTo(838.50468,319.33644);
	ctx.lineTo(835.91811,320.62972);
	ctx.lineTo(835.27147,322.73131);
	ctx.lineTo(833.97819,325.6412);
	ctx.lineTo(830.25999,327.2578);
	ctx.lineTo(827.83509,326.93448);
	ctx.lineTo(826.38014,326.77282);
	ctx.lineTo(824.76354,325.47954);
	ctx.lineTo(825.08686,326.77282);
	ctx.lineTo(825.08686,327.74279);
	ctx.lineTo(827.02679,327.74279);
	ctx.lineTo(827.83509,329.03607);
	ctx.lineTo(825.89516,335.34083);
	ctx.lineTo(830.09833,335.34083);
	ctx.lineTo(830.74498,336.95743);
	ctx.lineTo(833.00822,334.69419);
	ctx.lineTo(834.30151,334.2092);
	ctx.lineTo(832.36158,337.76573);
	ctx.lineTo(829.29003,342.61555);
	ctx.lineTo(827.99675,342.61555);
	ctx.lineTo(826.86512,342.13057);
	ctx.lineTo(824.1169,342.77721);
	ctx.lineTo(818.94376,345.20212);
	ctx.lineTo(812.47734,350.53691);
	ctx.lineTo(809.08247,355.22506);
	ctx.lineTo(807.14255,361.69148);
	ctx.lineTo(806.65757,364.11639);
	ctx.lineTo(801.96941,364.60137);
	ctx.lineTo(796.51628,365.93803);
	ctx.lineTo(786.56987,357.7355);
	ctx.lineTo(773.96033,350.13745);
	ctx.lineTo(771.05044,349.32914);
	ctx.lineTo(758.44091,350.78409);
	ctx.lineTo(754.16445,351.53424);
	ctx.lineTo(752.54785,348.30102);
	ctx.lineTo(749.57749,346.18432);
	ctx.lineTo(733.0881,346.6693);
	ctx.lineTo(725.81336,347.4776);
	ctx.lineTo(716.76037,352.00411);
	ctx.lineTo(710.61726,354.59067);
	ctx.lineTo(709.00066,354.91399);
	ctx.lineTo(703.18087,355.88396);
	ctx.lineTo(696.22946,356.69226);
	ctx.lineTo(689.43971,357.17725);
	ctx.lineTo(689.9398,353.12292);
	ctx.lineTo(691.71807,351.66798);
	ctx.lineTo(694.46631,351.02133);
	ctx.lineTo(695.11295,347.30313);
	ctx.lineTo(699.31613,344.55491);
	ctx.lineTo(703.19598,343.09995);
	ctx.lineTo(707.39917,339.54342);
	ctx.lineTo(711.764,337.44183);
	ctx.lineTo(712.41064,334.37027);
	ctx.lineTo(716.2905,330.49042);
	ctx.lineTo(716.93714,330.32876);
	ctx.bezierCurveTo(716.93714,330.32876,716.93714,331.46039,717.74545,331.46039)
	ctx.bezierCurveTo(718.55375,331.46039,719.68538,331.78371,719.68538,331.78371)
	ctx.lineTo(721.94863,328.22717);
	ctx.lineTo(724.05022,327.58052);
	ctx.lineTo(726.31346,327.90385);
	ctx.lineTo(727.93008,324.34732);
	ctx.lineTo(730.83997,321.76074);
	ctx.lineTo(731.32495,319.65915);
	ctx.lineTo(731.32495,315.69846);
	ctx.lineTo(735.85145,316.42594);
	ctx.lineTo(742.98754,315.13265);
	ctx.lineTo(758.80727,313.19272);
	ctx.lineTo(775.94331,310.60615);
	ctx.lineTo(795.86504,306.60555);
	ctx.lineTo(815.59836,302.44073);
	ctx.lineTo(826.9628,299.6443);

	ctx.moveTo(836.00199,331.45961);
	ctx.lineTo(838.58857,328.95386);
	ctx.lineTo(841.74095,326.36728);
	ctx.lineTo(843.27673,325.72064);
	ctx.lineTo(843.43839,323.69988);
	ctx.lineTo(842.79175,317.55676);
	ctx.lineTo(841.3368,315.21268);
	ctx.lineTo(840.69015,313.35358);
	ctx.lineTo(841.41763,313.11108);
	ctx.lineTo(844.16587,318.60756);
	ctx.lineTo(844.57002,323.05323);
	ctx.lineTo(844.40836,326.44812);
	ctx.lineTo(841.01348,327.98389);
	ctx.lineTo(838.18441,330.40881);
	ctx.lineTo(837.05279,331.62127);
	ctx.fill();
	ctx.stroke();
}

function drawTN(ctx, fillStyle)
{
	/* State: TN */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(697.05288,320.62911);
	ctx.lineTo(645.15979,325.6406);
	ctx.lineTo(629.40023,327.41886);
	ctx.lineTo(624.77903,327.93157);
	ctx.lineTo(620.91068,327.90385);
	ctx.lineTo(620.91068,331.78371);
	ctx.lineTo(612.50433,332.26869);
	ctx.lineTo(605.55292,332.91533);
	ctx.lineTo(594.45689,332.96824);
	ctx.lineTo(594.19215,338.80367);
	ctx.lineTo(592.05398,345.07921);
	ctx.lineTo(591.05891,348.09522);
	ctx.lineTo(589.71017,352.47628);
	ctx.lineTo(589.38685,355.06285);
	ctx.lineTo(585.34533,357.32609);
	ctx.lineTo(586.80027,360.88263);
	ctx.lineTo(585.83031,365.24747);
	ctx.lineTo(584.86193,366.03712);
	ctx.lineTo(592.11797,365.84281);
	ctx.lineTo(616.20542,363.90289);
	ctx.lineTo(621.54027,363.74122);
	ctx.lineTo(629.62326,363.25623);
	ctx.lineTo(657.42891,360.66967);
	ctx.lineTo(667.59966,359.86136);
	ctx.lineTo(676.01988,358.8914);
	ctx.lineTo(684.42624,357.75978);
	ctx.lineTo(689.27606,356.95147);
	ctx.lineTo(689.14548,352.44207);
	ctx.lineTo(690.92375,350.98713);
	ctx.lineTo(693.67198,350.34049);
	ctx.lineTo(694.31863,346.62229);
	ctx.lineTo(698.52181,343.87406);
	ctx.lineTo(702.40166,342.4191);
	ctx.lineTo(706.60484,338.86257);
	ctx.lineTo(710.96967,336.76099);
	ctx.lineTo(711.84326,333.23553);
	ctx.lineTo(716.17702,329.35568);
	ctx.lineTo(716.82367,329.19402);
	ctx.bezierCurveTo(716.82367,329.19402,716.82367,330.32564,717.63197,330.32564)
	ctx.bezierCurveTo(718.44027,330.32564,719.5719,330.64896,719.5719,330.64896)
	ctx.lineTo(721.83515,327.09242);
	ctx.lineTo(723.93674,326.44578);
	ctx.lineTo(726.19998,326.7691);
	ctx.lineTo(727.8166,323.21257);
	ctx.lineTo(729.93216,320.96641);
	ctx.lineTo(730.53062,319.99957);
	ctx.lineTo(730.70699,316.06745);
	ctx.lineTo(729.22336,315.77929);
	ctx.lineTo(726.79845,317.71923);
	ctx.lineTo(718.87707,317.88089);
	ctx.lineTo(706.88174,319.78157);
	ctx.fill();
	ctx.stroke();
}

function drawRI(ctx, fillStyle)
{
	/* State: RI */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(874.07001,179.82344);
	ctx.lineTo(873.58706,175.61904);
	ctx.lineTo(872.77876,171.2542);
	ctx.lineTo(871.08133,165.35359);
	ctx.lineTo(876.82028,163.81781);
	ctx.lineTo(878.43688,164.94943);
	ctx.lineTo(881.83176,169.31427);
	ctx.lineTo(884.74063,173.76056);
	ctx.lineTo(881.82968,175.29696);
	ctx.lineTo(880.5364,175.1353);
	ctx.lineTo(879.40478,176.91357);
	ctx.lineTo(876.97987,178.85349);
	ctx.fill();
	ctx.stroke();
}

function drawCT(ctx, fillStyle)
{
	/* State: CT */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(873.19331,180.05038);
	ctx.lineTo(872.56579,175.84599);
	ctx.lineTo(871.75749,171.48115);
	ctx.lineTo(870.14088,165.4997);
	ctx.lineTo(865.989,166.40438);
	ctx.lineTo(844.16479,171.17336);
	ctx.lineTo(844.81143,174.48742);
	ctx.lineTo(846.26638,181.76216);
	ctx.lineTo(846.26638,189.84519);
	ctx.lineTo(845.13475,192.10845);
	ctx.lineTo(846.96715,194.21757);
	ctx.lineTo(851.9225,190.81637);
	ctx.lineTo(855.47903,187.58316);
	ctx.lineTo(857.41895,185.48157);
	ctx.lineTo(858.22726,186.12821);
	ctx.lineTo(860.97548,184.67327);
	ctx.lineTo(866.14862,183.54165);
	ctx.fill();
	ctx.stroke();
}

function drawMA(ctx, fillStyle)
{
	/* State: MA */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(899.97704,173.85121);
	ctx.lineTo(902.14896,173.16533);
	ctx.lineTo(902.60622,171.45066);
	ctx.lineTo(903.63502,171.56497);
	ctx.lineTo(904.66382,173.85121);
	ctx.lineTo(903.4064,174.30845);
	ctx.lineTo(899.5198,174.42277);

	ctx.moveTo(890.6035,174.65139);
	ctx.lineTo(892.88972,172.02222);
	ctx.lineTo(894.49009,172.02222);
	ctx.lineTo(896.31908,173.50827);
	ctx.lineTo(893.91854,174.53707);
	ctx.lineTo(891.74662,175.56587);

	ctx.moveTo(855.80437,152.6632);
	ctx.lineTo(873.26374,148.46002);
	ctx.lineTo(875.527,147.81338);
	ctx.lineTo(877.62858,144.58017);
	ctx.lineTo(881.36535,142.91686);
	ctx.lineTo(884.25459,147.3297);
	ctx.lineTo(881.82968,152.50284);
	ctx.lineTo(881.50636,153.95778);
	ctx.lineTo(883.44629,156.54435);
	ctx.lineTo(884.57791,155.73605);
	ctx.lineTo(886.35618,155.73605);
	ctx.lineTo(888.61942,158.32261);
	ctx.lineTo(892.49928,164.30405);
	ctx.lineTo(896.05581,164.78903);
	ctx.lineTo(898.31905,163.81907);
	ctx.lineTo(900.09732,162.0408);
	ctx.lineTo(899.28901,159.29258);
	ctx.lineTo(897.18743,157.67597);
	ctx.lineTo(895.73248,158.48427);
	ctx.lineTo(894.76252,157.19099);
	ctx.lineTo(895.2475,156.70601);
	ctx.lineTo(897.34909,156.54435);
	ctx.lineTo(899.12735,157.35265);
	ctx.lineTo(901.06728,159.77756);
	ctx.lineTo(902.03724,162.68745);
	ctx.lineTo(902.36056,165.11235);
	ctx.lineTo(898.15739,166.5673);
	ctx.lineTo(894.27754,168.50722);
	ctx.lineTo(890.39769,173.03372);
	ctx.lineTo(888.45776,174.48866);
	ctx.lineTo(888.45776,173.5187);
	ctx.lineTo(890.88267,172.06375);
	ctx.lineTo(891.36765,170.28549);
	ctx.lineTo(890.55935,167.21394);
	ctx.lineTo(887.64946,168.66888);
	ctx.lineTo(886.84116,170.12383);
	ctx.lineTo(887.32614,172.38707);
	ctx.lineTo(885.25981,173.3875);
	ctx.lineTo(882.51261,168.86037);
	ctx.lineTo(879.11773,164.49553);
	ctx.lineTo(877.04723,162.68306);
	ctx.lineTo(870.51396,164.55926);
	ctx.lineTo(865.42163,165.61005);
	ctx.lineTo(843.59742,170.37904);
	ctx.lineTo(843.19483,165.43441);
	ctx.lineTo(843.84147,154.84564);
	ctx.lineTo(849.01462,153.9565);
	ctx.fill();
	ctx.stroke();
}

function drawME(ctx, fillStyle)
{
	/* State: ME */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(923.21476,77.330719);
	ctx.lineTo(925.15469,79.432305);
	ctx.lineTo(927.41794,83.150496);
	ctx.lineTo(927.41794,85.090422);
	ctx.lineTo(925.31635,89.778575);
	ctx.lineTo(923.37642,90.425217);
	ctx.lineTo(919.98155,93.496766);
	ctx.lineTo(915.13174,98.993222);
	ctx.bezierCurveTo(915.13174,98.993222,914.4851,98.993222,913.83846,98.993222)
	ctx.bezierCurveTo(913.19182,98.993222,912.86849,96.891636,912.86849,96.891636)
	ctx.lineTo(911.09023,97.053296);
	ctx.lineTo(910.12027,98.508241);
	ctx.lineTo(907.69536,99.963185);
	ctx.lineTo(906.7254,101.41813);
	ctx.lineTo(908.342,102.87307);
	ctx.lineTo(907.85702,103.51972);
	ctx.lineTo(907.37204,106.26794);
	ctx.lineTo(905.43211,106.10628);
	ctx.lineTo(905.43211,104.48968);
	ctx.lineTo(905.10879,103.19639);
	ctx.lineTo(903.65385,103.51972);
	ctx.lineTo(901.87558,100.28651);
	ctx.lineTo(899.774,101.57979);
	ctx.lineTo(901.06728,103.03473);
	ctx.lineTo(901.3906,104.16636);
	ctx.lineTo(900.5823,105.45964);
	ctx.lineTo(900.90562,108.53119);
	ctx.lineTo(901.06728,110.14779);
	ctx.lineTo(899.45068,112.73436);
	ctx.lineTo(896.54079,113.21934);
	ctx.lineTo(896.21747,116.12923);
	ctx.lineTo(890.88267,119.20078);
	ctx.lineTo(889.58939,119.68576);
	ctx.lineTo(887.97278,118.23082);
	ctx.lineTo(884.90123,121.78735);
	ctx.lineTo(885.8712,125.02056);
	ctx.lineTo(884.41625,126.31384);
	ctx.lineTo(884.25459,130.67867);
	ctx.lineTo(883.13131,136.93803);
	ctx.lineTo(880.66906,135.78208);
	ctx.lineTo(880.18407,132.71052);
	ctx.lineTo(876.30422,131.57889);
	ctx.lineTo(875.9809,128.83065);
	ctx.lineTo(868.70615,105.38983);
	ctx.lineTo(864.50757,91.750088);
	ctx.lineTo(865.92811,91.631923);
	ctx.lineTo(867.4419,92.041822);
	ctx.lineTo(867.4419,89.455254);
	ctx.lineTo(868.2502,83.958798);
	ctx.lineTo(870.83677,79.270645);
	ctx.lineTo(872.29172,75.229133);
	ctx.lineTo(870.35179,72.804226);
	ctx.lineTo(870.35179,66.822789);
	ctx.lineTo(871.16009,65.852826);
	ctx.lineTo(871.9684,63.104598);
	ctx.lineTo(871.80674,61.649654);
	ctx.lineTo(871.64507,56.79984);
	ctx.lineTo(873.42334,51.950026);
	ctx.lineTo(876.33323,43.0587);
	ctx.lineTo(878.43481,38.855528);
	ctx.lineTo(879.7281,38.855528);
	ctx.lineTo(881.02138,39.017188);
	ctx.lineTo(881.02138,40.148811);
	ctx.lineTo(882.31467,42.412058);
	ctx.lineTo(885.06289,43.0587);
	ctx.lineTo(885.8712,42.250397);
	ctx.lineTo(885.8712,41.280435);
	ctx.lineTo(889.91271,38.370546);
	ctx.lineTo(891.69097,36.592281);
	ctx.lineTo(893.14592,36.753942);
	ctx.lineTo(899.12735,39.178849);
	ctx.lineTo(901.06728,40.148811);
	ctx.lineTo(910.12027,70.055998);
	ctx.lineTo(916.1017,70.055998);
	ctx.lineTo(916.91001,71.995924);
	ctx.lineTo(917.07167,76.845738);
	ctx.lineTo(919.98155,79.108984);
	ctx.lineTo(920.78986,79.108984);
	ctx.lineTo(920.95152,78.624003);
	ctx.lineTo(920.46654,77.49238);

	ctx.moveTo(902.28301,107.47825);
	ctx.lineTo(903.81879,105.94247);
	ctx.lineTo(905.19291,106.99327);
	ctx.lineTo(905.75872,109.41819);
	ctx.lineTo(904.06128,110.30732);

	ctx.moveTo(908.99194,101.57763);
	ctx.lineTo(910.77021,103.43673);
	ctx.bezierCurveTo(910.77021,103.43673,912.0635,103.51755,912.0635,103.19423)
	ctx.bezierCurveTo(912.0635,102.87091,912.30599,101.17347,912.30599,101.17347)
	ctx.lineTo(913.19513,100.36517);
	ctx.lineTo(912.38682,98.586893);
	ctx.lineTo(910.36606,99.31437);
	ctx.fill();
	ctx.stroke();
}

function drawNH(ctx, fillStyle)
{
	/* State: NH */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(880.79902,142.42476);
	ctx.lineTo(881.66802,141.34826);
	ctx.lineTo(882.75824,138.05724);
	ctx.lineTo(880.21516,137.14377);
	ctx.lineTo(879.73017,134.07221);
	ctx.lineTo(875.85032,132.94059);
	ctx.lineTo(875.527,130.19235);
	ctx.lineTo(868.25225,106.75153);
	ctx.lineTo(863.65083,92.208542);
	ctx.lineTo(862.75375,92.203482);
	ctx.lineTo(862.10711,93.820087);
	ctx.lineTo(861.46047,93.335106);
	ctx.lineTo(860.4905,92.365143);
	ctx.lineTo(859.03556,94.305068);
	ctx.lineTo(858.98709,99.337122);
	ctx.lineTo(859.29874,105.00434);
	ctx.lineTo(861.23866,107.75258);
	ctx.lineTo(861.23866,111.7941);
	ctx.lineTo(857.52046,116.85688);
	ctx.lineTo(854.93389,117.98852);
	ctx.lineTo(854.93389,119.12014);
	ctx.lineTo(856.06552,120.89841);
	ctx.lineTo(856.06552,129.46643);
	ctx.lineTo(855.25721,138.6811);
	ctx.lineTo(855.09555,143.53092);
	ctx.lineTo(856.06552,144.82422);
	ctx.lineTo(855.90386,149.35071);
	ctx.lineTo(855.41887,151.12899);
	ctx.lineTo(856.87382,152.01499);
	ctx.lineTo(873.26374,147.32527);
	ctx.lineTo(875.527,146.67863);
	ctx.lineTo(877.06121,144.12627);
	ctx.fill();
	ctx.stroke();
}

function drawVT(ctx, fillStyle)
{
	/* State: VT */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(844.34355,153.72643);
	ctx.lineTo(843.53525,148.0683);
	ctx.lineTo(841.14454,138.09663);
	ctx.lineTo(840.4979,137.77331);
	ctx.lineTo(837.588,136.48002);
	ctx.lineTo(838.3963,133.57013);
	ctx.lineTo(837.588,131.46854);
	ctx.lineTo(834.88795,126.82856);
	ctx.lineTo(835.85792,122.9487);
	ctx.lineTo(835.04961,117.77555);
	ctx.lineTo(832.6247,111.30911);
	ctx.lineTo(831.81913,106.3866);
	ctx.lineTo(858.06661,99.63916);
	ctx.lineTo(858.39094,105.45824);
	ctx.lineTo(860.33087,108.20648);
	ctx.lineTo(860.33087,112.248);
	ctx.lineTo(856.61267,116.28952);
	ctx.lineTo(854.0261,117.42115);
	ctx.lineTo(854.0261,118.55277);
	ctx.lineTo(855.15772,120.33104);
	ctx.lineTo(855.15772,128.89906);
	ctx.lineTo(854.34942,138.11373);
	ctx.lineTo(854.18776,142.96356);
	ctx.lineTo(855.15772,144.25685);
	ctx.lineTo(854.99606,148.78334);
	ctx.lineTo(854.51108,150.56162);
	ctx.lineTo(855.1717,152.12847);
	ctx.lineTo(848.22029,153.5026);
	ctx.fill();
	ctx.stroke();
}

function drawNY(ctx, fillStyle)
{
	/* State: NY */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(828.61427,189.42238);
	ctx.lineTo(827.48264,188.45242);
	ctx.lineTo(824.89606,188.29076);
	ctx.lineTo(822.63282,186.35084);
	ctx.lineTo(821.00221,180.22171);
	ctx.lineTo(817.54375,180.31225);
	ctx.lineTo(815.10004,177.60405);
	ctx.lineTo(795.71472,181.98599);
	ctx.lineTo(752.71294,190.71568);
	ctx.lineTo(745.18329,191.94367);
	ctx.lineTo(744.44513,185.47533);
	ctx.lineTo(745.87323,184.34995);
	ctx.lineTo(747.16651,183.21833);
	ctx.lineTo(748.13648,181.60172);
	ctx.lineTo(749.91474,180.4701);
	ctx.lineTo(751.85467,178.69183);
	ctx.lineTo(752.33965,177.07523);
	ctx.lineTo(754.44123,174.327);
	ctx.lineTo(755.57286,173.35704);
	ctx.lineTo(755.4112,172.38707);
	ctx.lineTo(754.11791,169.31553);
	ctx.lineTo(752.33965,169.15387);
	ctx.lineTo(750.39972,163.01077);
	ctx.lineTo(753.30961,161.2325);
	ctx.lineTo(757.67444,159.77756);
	ctx.lineTo(761.71596,158.48427);
	ctx.lineTo(764.94917,157.99929);
	ctx.lineTo(771.25392,157.83763);
	ctx.lineTo(773.19385,159.13092);
	ctx.lineTo(774.81045,159.29258);
	ctx.lineTo(776.91204,157.99929);
	ctx.lineTo(779.49861,156.86767);
	ctx.lineTo(784.67174,156.38269);
	ctx.lineTo(786.77333,154.60442);
	ctx.lineTo(788.55159,151.37121);
	ctx.lineTo(790.1682,149.43129);
	ctx.lineTo(792.26978,149.43129);
	ctx.lineTo(794.20971,148.29966);
	ctx.lineTo(794.37137,146.03642);
	ctx.lineTo(792.91643,143.93483);
	ctx.lineTo(792.59311,142.47989);
	ctx.lineTo(793.72473,140.3783);
	ctx.lineTo(793.72473,138.92336);
	ctx.lineTo(791.94646,138.92336);
	ctx.lineTo(790.1682,138.11506);
	ctx.lineTo(789.3599,136.98343);
	ctx.lineTo(789.19824,134.39686);
	ctx.lineTo(795.01801,128.90041);
	ctx.lineTo(795.66465,128.09211);
	ctx.lineTo(797.1196,125.18222);
	ctx.lineTo(800.02949,120.65572);
	ctx.lineTo(802.77772,116.93753);
	ctx.lineTo(804.8793,114.51263);
	ctx.lineTo(807.2944,112.68702);
	ctx.lineTo(810.37576,111.44108);
	ctx.lineTo(815.87221,110.14779);
	ctx.lineTo(819.10542,110.30945);
	ctx.lineTo(823.63192,108.85451);
	ctx.lineTo(831.19711,106.78334);
	ctx.lineTo(831.7169,111.76301);
	ctx.lineTo(834.14182,118.22945);
	ctx.lineTo(834.95012,123.4026);
	ctx.lineTo(833.98016,127.28246);
	ctx.lineTo(836.56673,131.80896);
	ctx.lineTo(837.37503,133.91055);
	ctx.lineTo(836.56673,136.82045);
	ctx.lineTo(839.47663,138.11373);
	ctx.lineTo(840.12327,138.43705);
	ctx.lineTo(843.19483,149.42999);
	ctx.lineTo(842.65854,154.48966);
	ctx.lineTo(842.17356,165.32093);
	ctx.lineTo(842.98186,170.8174);
	ctx.lineTo(843.79016,174.37394);
	ctx.lineTo(845.24511,181.64868);
	ctx.lineTo(845.24511,189.73172);
	ctx.lineTo(844.11348,191.99497);
	ctx.lineTo(845.95281,193.98776);
	ctx.lineTo(846.74936,195.66618);
	ctx.lineTo(844.80944,197.44445);
	ctx.lineTo(845.13276,198.73773);
	ctx.lineTo(846.42604,198.41441);
	ctx.lineTo(847.88099,197.12113);
	ctx.lineTo(850.14423,194.53456);
	ctx.lineTo(851.27586,193.88792);
	ctx.lineTo(852.89246,194.53456);
	ctx.lineTo(855.15571,194.69622);
	ctx.lineTo(863.07707,190.81637);
	ctx.lineTo(865.98696,188.06814);
	ctx.lineTo(867.28024,186.6132);
	ctx.lineTo(871.48341,188.2298);
	ctx.lineTo(868.08854,191.78633);
	ctx.lineTo(864.20869,194.69622);
	ctx.lineTo(857.09563,200.03101);
	ctx.lineTo(854.50907,201.00098);
	ctx.lineTo(848.68929,202.9409);
	ctx.lineTo(844.64778,204.07253);
	ctx.lineTo(843.47304,203.5396);
	ctx.lineTo(843.22902,199.85107);
	ctx.lineTo(843.714,197.10283);
	ctx.lineTo(843.55234,195.00125);
	ctx.lineTo(840.73883,193.30225);
	ctx.lineTo(836.21233,192.33228);
	ctx.lineTo(832.33247,191.20066);
	ctx.fill();
	ctx.stroke();
}

function drawNJ(ctx, fillStyle)
{
	/* State: NJ */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(828.16036,190.33018);
	ctx.lineTo(826.05878,192.75509);
	ctx.lineTo(826.05878,195.82665);
	ctx.lineTo(824.11884,198.8982);
	ctx.lineTo(823.95718,200.51482);
	ctx.lineTo(825.25048,201.8081);
	ctx.lineTo(825.08882,204.23302);
	ctx.lineTo(822.82556,205.36464);
	ctx.lineTo(823.63386,208.11287);
	ctx.lineTo(823.79552,209.2445);
	ctx.lineTo(826.54376,209.56782);
	ctx.lineTo(827.51372,212.15439);
	ctx.lineTo(831.07026,214.57931);
	ctx.lineTo(833.49517,216.19591);
	ctx.lineTo(833.49517,217.00422);
	ctx.lineTo(830.26196,220.07578);
	ctx.lineTo(828.64535,222.33902);
	ctx.lineTo(827.1904,225.08726);
	ctx.lineTo(824.92715,226.38054);
	ctx.lineTo(823.7147,227.10802);
	ctx.lineTo(823.4722,228.32048);
	ctx.lineTo(822.86297,230.92722);
	ctx.lineTo(823.95524,233.17141);
	ctx.lineTo(827.18845,236.0813);
	ctx.lineTo(832.03826,238.34455);
	ctx.lineTo(836.07977,238.99119);
	ctx.lineTo(836.24143,240.44613);
	ctx.lineTo(835.43313,241.41609);
	ctx.lineTo(835.75645,244.16432);
	ctx.lineTo(836.56475,244.16432);
	ctx.lineTo(838.66634,241.73942);
	ctx.lineTo(839.47464,236.8896);
	ctx.lineTo(842.22287,232.84809);
	ctx.lineTo(845.29442,226.38167);
	ctx.lineTo(846.42604,220.88522);
	ctx.lineTo(845.7794,219.75359);
	ctx.lineTo(845.61774,210.37728);
	ctx.lineTo(844.00113,206.98242);
	ctx.lineTo(842.86951,207.79072);
	ctx.lineTo(840.12128,208.11404);
	ctx.lineTo(839.6363,207.62906);
	ctx.lineTo(840.76793,206.65909);
	ctx.lineTo(842.86951,204.71917);
	ctx.lineTo(842.93257,203.62534);
	ctx.lineTo(842.54818,200.1915);
	ctx.lineTo(843.03316,197.44326);
	ctx.lineTo(842.8715,195.34167);
	ctx.lineTo(840.28493,194.21004);
	ctx.lineTo(835.75843,193.24008);
	ctx.lineTo(831.87857,192.10845);
	ctx.fill();
	ctx.stroke();
}

function drawPA(ctx, fillStyle)
{
	/* State: PA */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(822.20688,226.45982);
	ctx.lineTo(823.33852,225.81317);
	ctx.lineTo(825.60176,225.20074);
	ctx.lineTo(827.05671,222.4525);
	ctx.lineTo(828.67332,220.18925);
	ctx.lineTo(831.90653,217.11769);
	ctx.lineTo(831.90653,216.30939);
	ctx.lineTo(829.48162,214.69279);
	ctx.lineTo(825.92508,212.26787);
	ctx.lineTo(824.95512,209.6813);
	ctx.lineTo(822.20688,209.35798);
	ctx.lineTo(822.04522,208.22635);
	ctx.lineTo(821.23692,205.47812);
	ctx.lineTo(823.50018,204.3465);
	ctx.lineTo(823.66184,201.92158);
	ctx.lineTo(822.36854,200.62829);
	ctx.lineTo(822.5302,199.01168);
	ctx.lineTo(824.47014,195.94013);
	ctx.lineTo(824.47014,192.86857);
	ctx.lineTo(826.81422,190.44366);
	ctx.lineTo(827.02874,189.36021);
	ctx.lineTo(824.44216,189.19855);
	ctx.lineTo(822.17892,187.25863);
	ctx.lineTo(819.754,181.92382);
	ctx.lineTo(816.74942,180.99309);
	ctx.lineTo(814.41919,178.85226);
	ctx.lineTo(795.8282,182.89378);
	ctx.lineTo(752.82642,191.62347);
	ctx.lineTo(743.93507,193.07841);
	ctx.lineTo(743.4394,185.99452);
	ctx.lineTo(737.95187,191.62467);
	ctx.lineTo(736.65858,192.10965);
	ctx.lineTo(732.45629,195.11854);
	ctx.lineTo(735.36705,214.25599);
	ctx.lineTo(737.84871,223.98535);
	ctx.lineTo(741.42051,243.24684);
	ctx.lineTo(744.68982,242.60916);
	ctx.lineTo(756.6334,241.10669);
	ctx.lineTo(794.56003,233.44149);
	ctx.lineTo(809.43624,230.61817);
	ctx.lineTo(817.73659,228.99581);
	ctx.lineTo(818.0037,228.75728);
	ctx.lineTo(820.1053,227.14066);
	ctx.fill();
	ctx.stroke();
}

function drawDE(ctx, fillStyle)
{
	/* State: DE */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(822.35259,230.42318);
	ctx.lineTo(822.94187,228.32048);
	ctx.lineTo(822.96339,227.11557);
	ctx.lineTo(821.69394,227.02719);
	ctx.lineTo(819.59234,228.6438);
	ctx.lineTo(818.13739,230.09874);
	ctx.lineTo(819.59234,234.30193);
	ctx.lineTo(821.8556,239.96005);
	ctx.lineTo(823.95718,249.6597);
	ctx.lineTo(825.5738,255.96448);
	ctx.lineTo(830.58528,255.80282);
	ctx.lineTo(836.7274,254.59089);
	ctx.lineTo(834.46317,247.23587);
	ctx.lineTo(833.4932,247.72085);
	ctx.lineTo(829.93667,245.29595);
	ctx.lineTo(828.15841,240.60779);
	ctx.lineTo(826.21848,237.05126);
	ctx.lineTo(823.95524,236.0813);
	ctx.lineTo(821.85365,232.52477);
	ctx.fill();
	ctx.stroke();
}

function drawMD(ctx, fillStyle)
{
	/* State: MD */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(836.95336,255.30492);
	ctx.lineTo(830.81223,256.59715);
	ctx.lineTo(825.00642,256.75881);
	ctx.lineTo(823.16286,249.6597);
	ctx.lineTo(821.06127,239.96005);
	ctx.lineTo(818.79801,234.30193);
	ctx.lineTo(817.50963,229.9036);
	ctx.lineTo(810.00361,231.52596);
	ctx.lineTo(795.1274,234.34928);
	ctx.lineTo(757.67597,241.90018);
	ctx.lineTo(758.80727,246.91184);
	ctx.lineTo(759.77723,252.56995);
	ctx.lineTo(760.10055,252.24663);
	ctx.lineTo(762.20215,249.82173);
	ctx.lineTo(764.46539,247.20407);
	ctx.lineTo(766.8903,246.58851);
	ctx.lineTo(768.34526,245.13356);
	ctx.lineTo(770.12352,242.54699);
	ctx.lineTo(771.4168,243.19364);
	ctx.lineTo(774.32669,242.87031);
	ctx.lineTo(776.91327,240.76873);
	ctx.lineTo(778.92016,239.31546);
	ctx.lineTo(780.76539,238.83048);
	ctx.lineTo(782.40974,239.96043);
	ctx.lineTo(785.31963,241.41537);
	ctx.lineTo(787.25955,243.19364);
	ctx.lineTo(788.47201,244.72942);
	ctx.lineTo(792.59436,246.42685);
	ctx.lineTo(792.59436,249.33674);
	ctx.lineTo(798.09082,250.63003);
	ctx.lineTo(799.23526,251.17201);
	ctx.lineTo(800.64716,249.14369);
	ctx.lineTo(803.52913,251.11385);
	ctx.lineTo(802.25096,253.59578);
	ctx.lineTo(801.48569,257.58144);
	ctx.lineTo(799.70743,260.16801);
	ctx.lineTo(799.70743,262.2696);
	ctx.lineTo(800.35407,264.04787);
	ctx.lineTo(805.41802,265.40356);
	ctx.lineTo(809.72912,265.34184);
	ctx.lineTo(812.80066,266.31181);
	ctx.lineTo(814.90225,266.63513);
	ctx.lineTo(815.87221,264.53354);
	ctx.lineTo(814.41727,262.43196);
	ctx.lineTo(814.41727,260.65369);
	ctx.lineTo(811.99236,258.5521);
	ctx.lineTo(809.89078,253.05565);
	ctx.lineTo(811.18406,247.72085);
	ctx.lineTo(811.0224,245.61927);
	ctx.lineTo(809.72912,244.32598);
	ctx.bezierCurveTo(809.72912,244.32598,811.18406,242.70938,811.18406,242.06274)
	ctx.bezierCurveTo(811.18406,241.41609,811.66904,239.96115,811.66904,239.96115)
	ctx.lineTo(813.60897,238.66787);
	ctx.lineTo(815.54889,237.05126);
	ctx.lineTo(816.03387,238.02123);
	ctx.lineTo(814.57893,239.63783);
	ctx.lineTo(813.28565,243.35602);
	ctx.lineTo(813.60897,244.48764);
	ctx.lineTo(815.38723,244.81096);
	ctx.lineTo(815.87221,250.30742);
	ctx.lineTo(813.77063,251.27738);
	ctx.lineTo(814.09395,254.83391);
	ctx.lineTo(814.57893,254.67225);
	ctx.lineTo(815.71055,252.73233);
	ctx.lineTo(817.32716,254.51059);
	ctx.lineTo(815.71055,255.80388);
	ctx.lineTo(815.38723,259.19875);
	ctx.lineTo(817.9738,262.59362);
	ctx.lineTo(821.85365,263.0786);
	ctx.lineTo(823.47026,262.2703);
	ctx.lineTo(826.70681,266.45323);
	ctx.lineTo(828.06516,266.98953);
	ctx.lineTo(834.71883,264.19258);
	ctx.lineTo(836.72641,260.16871);

	ctx.moveTo(820.32087,264.28945);
	ctx.lineTo(821.45249,266.7952);
	ctx.lineTo(821.61415,268.57347);
	ctx.lineTo(822.74578,270.43257);
	ctx.bezierCurveTo(822.74578,270.43257,823.63492,269.54343,823.63492,269.22011)
	ctx.bezierCurveTo(823.63492,268.89679,822.90745,266.14855,822.90745,266.14855)
	ctx.lineTo(822.17997,263.80446);
	ctx.fill();
	ctx.stroke();
}

function drawWV(ctx, fillStyle)
{
	/* State: WV */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(756.56051,241.96731);
	ctx.lineTo(757.67252,246.91184);
	ctx.lineTo(758.75596,253.81817);
	ctx.lineTo(762.31563,251.06994);
	ctx.lineTo(764.57887,247.99838);
	ctx.lineTo(767.11725,247.38283);
	ctx.lineTo(768.5722,245.92789);
	ctx.lineTo(770.35047,243.34132);
	ctx.lineTo(771.53028,243.98796);
	ctx.lineTo(774.44017,243.66464);
	ctx.lineTo(777.02675,241.56305);
	ctx.lineTo(779.03364,240.10979);
	ctx.lineTo(780.87887,239.6248);
	ctx.lineTo(782.18279,240.64127);
	ctx.lineTo(784.41183,241.75579);
	ctx.lineTo(786.35176,243.53406);
	ctx.lineTo(787.72588,244.82734);
	ctx.lineTo(787.58288,249.4984);
	ctx.lineTo(781.92475,246.42685);
	ctx.lineTo(777.39825,244.64858);
	ctx.lineTo(777.23659,249.98339);
	ctx.lineTo(776.75161,252.08497);
	ctx.lineTo(775.13501,254.83321);
	ctx.lineTo(774.48835,256.44982);
	ctx.lineTo(771.4168,258.87472);
	ctx.lineTo(770.93182,261.13798);
	ctx.lineTo(767.53694,261.4613);
	ctx.lineTo(767.21362,264.53285);
	ctx.lineTo(766.082,270.02932);
	ctx.lineTo(763.49543,270.02932);
	ctx.lineTo(762.20215,269.22101);
	ctx.lineTo(760.58553,266.47277);
	ctx.lineTo(758.80727,266.63443);
	ctx.lineTo(758.48395,270.99928);
	ctx.lineTo(756.38236,277.62737);
	ctx.lineTo(751.37088,288.45864);
	ctx.lineTo(752.17918,289.75192);
	ctx.lineTo(752.01752,292.50015);
	ctx.lineTo(749.91593,294.44008);
	ctx.lineTo(748.46099,294.11676);
	ctx.lineTo(745.22777,296.54167);
	ctx.lineTo(742.6412,295.57171);
	ctx.lineTo(740.86294,300.25986);
	ctx.bezierCurveTo(740.86294,300.25986,737.14473,301.06817,736.49809,301.22983)
	ctx.bezierCurveTo(735.85145,301.39149,734.07318,299.93654,734.07318,299.93654)
	ctx.lineTo(731.64827,302.19979);
	ctx.lineTo(729.0617,302.84644);
	ctx.lineTo(726.1518,302.03813);
	ctx.lineTo(724.85852,300.74485);
	ctx.lineTo(722.6663,297.72149);
	ctx.lineTo(719.52371,295.73337);
	ctx.lineTo(716.93714,292.98513);
	ctx.lineTo(714.02726,289.26694);
	ctx.lineTo(713.38061,287.00369);
	ctx.lineTo(710.79404,285.54874);
	ctx.lineTo(709.98573,283.93214);
	ctx.lineTo(709.74324,278.67816);
	ctx.lineTo(711.92566,278.59733);
	ctx.lineTo(713.8656,277.78903);
	ctx.lineTo(714.02726,275.0408);
	ctx.lineTo(715.64386,273.58585);
	ctx.lineTo(715.80552,268.57437);
	ctx.lineTo(716.77548,264.69451);
	ctx.lineTo(718.06877,264.04787);
	ctx.lineTo(719.36205,265.17949);
	ctx.lineTo(719.84704,266.95776);
	ctx.lineTo(721.62531,265.98779);
	ctx.lineTo(722.11029,264.37119);
	ctx.lineTo(720.97867,262.59292);
	ctx.lineTo(720.97867,260.16801);
	ctx.lineTo(721.94863,258.87472);
	ctx.lineTo(724.21188,255.47985);
	ctx.lineTo(725.50516,254.02491);
	ctx.lineTo(727.60676,254.50989);
	ctx.lineTo(729.87,252.89327);
	ctx.lineTo(732.94155,249.4984);
	ctx.lineTo(735.20481,245.61854);
	ctx.lineTo(735.52813,239.96043);
	ctx.lineTo(736.01311,234.94894);
	ctx.lineTo(736.01311,230.26078);
	ctx.lineTo(734.88149,227.18923);
	ctx.lineTo(735.85145,225.73427);
	ctx.lineTo(737.13493,224.44099);
	ctx.lineTo(740.62618,244.26811);
	ctx.lineTo(745.25719,243.51696);
	ctx.fill();
	ctx.stroke();
}

function drawKY(ctx, fillStyle)
{
	/* State: KY */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(721.78301,297.81787);
	ctx.lineTo(719.45844,300.5008);
	ctx.lineTo(715.25525,304.05734);
	ctx.lineTo(710.9557,309.95951);
	ctx.lineTo(709.17743,311.73778);
	ctx.lineTo(709.17743,313.83936);
	ctx.lineTo(705.29757,315.94095);
	ctx.lineTo(699.63945,319.33583);
	ctx.lineTo(696.11989,319.72047);
	ctx.lineTo(644.252,324.61933);
	ctx.lineTo(628.49244,326.39759);
	ctx.lineTo(623.87124,326.9103);
	ctx.lineTo(620.00289,326.88258);
	ctx.lineTo(619.77594,331.10286);
	ctx.lineTo(611.59653,331.24742);
	ctx.lineTo(604.64512,331.89406);
	ctx.lineTo(594.21453,332.09966);
	ctx.lineTo(596.12731,331.87803);
	ctx.lineTo(598.30736,330.11601);
	ctx.lineTo(600.36496,328.97291);
	ctx.lineTo(600.59359,325.77218);
	ctx.lineTo(601.50808,323.9432);
	ctx.lineTo(599.90126,321.4043);
	ctx.lineTo(600.70309,319.49749);
	ctx.lineTo(602.96635,317.71923);
	ctx.lineTo(605.06793,317.07258);
	ctx.lineTo(607.81616,318.36587);
	ctx.lineTo(611.3727,319.65915);
	ctx.lineTo(612.50433,319.33583);
	ctx.lineTo(612.66599,317.07258);
	ctx.lineTo(611.3727,314.64767);
	ctx.lineTo(611.69602,312.38442);
	ctx.lineTo(613.63595,310.92948);
	ctx.lineTo(616.22253,310.28283);
	ctx.lineTo(617.83913,309.63619);
	ctx.lineTo(617.03083,307.85792);
	ctx.lineTo(616.38419,305.91799);
	ctx.lineTo(617.51581,305.10969);
	ctx.lineTo(618.5666,301.79563);
	ctx.lineTo(621.55732,300.0982);
	ctx.lineTo(627.37711,299.12824);
	ctx.lineTo(630.93365,298.64326);
	ctx.lineTo(632.38859,300.58319);
	ctx.lineTo(634.16686,301.39149);
	ctx.lineTo(635.94513,298.15828);
	ctx.lineTo(638.85502,296.70333);
	ctx.lineTo(640.79495,298.31994);
	ctx.lineTo(641.60325,299.45156);
	ctx.lineTo(643.70485,298.96658);
	ctx.lineTo(643.54318,295.57171);
	ctx.lineTo(646.45308,293.9551);
	ctx.lineTo(647.5847,293.14679);
	ctx.lineTo(648.71632,294.7634);
	ctx.lineTo(653.40449,294.7634);
	ctx.lineTo(654.21279,292.66181);
	ctx.lineTo(653.88947,290.39857);
	ctx.lineTo(656.79936,286.84202);
	ctx.lineTo(661.48752,282.96217);
	ctx.lineTo(661.9725,278.43567);
	ctx.lineTo(664.72074,278.11235);
	ctx.lineTo(668.60059,276.33408);
	ctx.lineTo(671.34883,274.39415);
	ctx.lineTo(671.0255,272.45422);
	ctx.lineTo(669.57055,270.99928);
	ctx.lineTo(670.13637,268.81687);
	ctx.lineTo(674.25872,268.57437);
	ctx.lineTo(676.68363,267.76607);
	ctx.lineTo(679.59352,269.38267);
	ctx.lineTo(681.21013,273.74751);
	ctx.lineTo(687.02992,274.07083);
	ctx.lineTo(688.80818,275.8491);
	ctx.lineTo(690.90977,276.01076);
	ctx.lineTo(693.33468,274.55582);
	ctx.lineTo(696.40623,275.0408);
	ctx.lineTo(697.69952,276.49574);
	ctx.lineTo(700.44776,273.90917);
	ctx.lineTo(702.22602,272.61588);
	ctx.lineTo(703.84263,272.61588);
	ctx.lineTo(704.48927,275.36412);
	ctx.lineTo(706.26754,276.33408);
	ctx.lineTo(708.68933,278.54915);
	ctx.lineTo(708.85099,284.04561);
	ctx.lineTo(709.65929,285.66222);
	ctx.lineTo(712.24587,287.11716);
	ctx.lineTo(712.89251,289.38042);
	ctx.lineTo(715.8024,293.09861);
	ctx.lineTo(718.38896,295.84685);
	ctx.fill();
	ctx.stroke();
}

function drawOH(ctx, fillStyle)
{
	/* State: OH */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(731.43589,195.0077);
	ctx.lineTo(725.34235,199.06105);
	ctx.lineTo(721.4625,201.3243);
	ctx.lineTo(718.06763,205.04249);
	ctx.lineTo(714.02612,208.92234);
	ctx.lineTo(710.79291,209.73064);
	ctx.lineTo(707.88302,210.21562);
	ctx.lineTo(702.38656,212.80219);
	ctx.lineTo(700.28498,212.96385);
	ctx.lineTo(696.89011,209.8923);
	ctx.lineTo(691.71697,210.53895);
	ctx.lineTo(689.13041,209.084);
	ctx.lineTo(686.74934,207.73317);
	ctx.lineTo(681.85677,208.43658);
	ctx.lineTo(671.67215,210.05319);
	ctx.lineTo(663.91243,211.26565);
	ctx.lineTo(665.20572,225.89593);
	ctx.lineTo(666.98399,239.6371);
	ctx.lineTo(669.57055,263.0779);
	ctx.lineTo(670.13637,267.90907);
	ctx.lineTo(674.25872,267.78005);
	ctx.lineTo(676.68363,266.97174);
	ctx.lineTo(680.04743,268.47488);
	ctx.lineTo(682.11792,272.83971);
	ctx.lineTo(687.25686,272.82261);
	ctx.lineTo(689.1486,274.94131);
	ctx.lineTo(690.90977,274.87601);
	ctx.lineTo(693.44816,273.53455);
	ctx.lineTo(695.95233,273.90605);
	ctx.lineTo(697.92646,275.361);
	ctx.lineTo(699.65343,273.22832);
	ctx.lineTo(701.99908,271.93504);
	ctx.lineTo(704.06957,271.25419);
	ctx.lineTo(704.71621,274.00243);
	ctx.lineTo(706.49449,274.97239);
	ctx.lineTo(709.97018,277.31646);
	ctx.lineTo(712.1526,277.23564);
	ctx.lineTo(713.29822,276.08691);
	ctx.lineTo(713.23293,274.70038);
	ctx.lineTo(714.84954,273.24542);
	ctx.lineTo(715.0112,268.23395);
	ctx.bezierCurveTo(715.0112,268.23395,715.98116,264.35409,715.98116,264.35409)
	ctx.lineTo(717.5014,262.91312);
	ctx.lineTo(719.02163,263.8178);
	ctx.lineTo(719.84704,265.02868);
	ctx.lineTo(721.05794,264.85305);
	ctx.lineTo(720.63513,262.44212);
	ctx.lineTo(720.07087,261.7986);
	ctx.lineTo(720.07087,259.37368);
	ctx.lineTo(721.04084,258.0804);
	ctx.lineTo(723.30408,254.68553);
	ctx.lineTo(724.59737,253.23058);
	ctx.lineTo(726.69896,253.71556);
	ctx.lineTo(728.96221,252.09895);
	ctx.lineTo(732.03376,248.70408);
	ctx.lineTo(734.29702,244.82422);
	ctx.lineTo(734.50686,239.39306);
	ctx.lineTo(734.99184,234.38157);
	ctx.lineTo(734.99184,229.69341);
	ctx.lineTo(733.86022,226.62186);
	ctx.lineTo(734.83018,225.16691);
	ctx.lineTo(735.75069,224.2123);
	ctx.lineTo(734.34578,214.36947);
	ctx.fill();
	ctx.stroke();
}

function drawMI(ctx, fillStyle)
{
	/* State: MI */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(581.61931,82.059006);
	ctx.lineTo(583.4483,80.001402);
	ctx.lineTo(585.62022,79.201221);
	ctx.lineTo(590.99286,75.314624);
	ctx.lineTo(593.27908,74.743065);
	ctx.lineTo(593.73634,75.200319);
	ctx.lineTo(588.59232,80.344339);
	ctx.lineTo(585.27728,82.287628);
	ctx.lineTo(583.21967,83.202124);

	ctx.moveTo(667.79369,114.18719);
	ctx.lineTo(668.44033,116.69293);
	ctx.lineTo(671.67355,116.85459);
	ctx.lineTo(672.96684,115.64213);
	ctx.bezierCurveTo(672.96684,115.64213,672.88601,114.18719,672.56269,114.02552)
	ctx.bezierCurveTo(672.23936,113.86386,670.94608,112.16642,670.94608,112.16642)
	ctx.lineTo(668.76366,112.40891);
	ctx.lineTo(667.14704,112.57057);
	ctx.lineTo(666.82372,113.7022);

	ctx.moveTo(697.86007,177.23689);
	ctx.lineTo(694.62686,168.9922);
	ctx.lineTo(692.36361,159.93922);
	ctx.lineTo(689.93871,156.70601);
	ctx.lineTo(687.35214,154.92774);
	ctx.lineTo(685.73554,156.05937);
	ctx.lineTo(681.85568,157.83763);
	ctx.lineTo(679.91576,162.84911);
	ctx.lineTo(677.16753,166.5673);
	ctx.lineTo(676.03591,167.21394);
	ctx.lineTo(674.58096,166.5673);
	ctx.bezierCurveTo(674.58096,166.5673,671.9944,165.11235,672.15606,164.46571)
	ctx.bezierCurveTo(672.31772,163.81907,672.64104,159.45424,672.64104,159.45424)
	ctx.lineTo(676.03591,158.16095);
	ctx.lineTo(676.84421,154.76608);
	ctx.lineTo(677.49085,152.17952);
	ctx.lineTo(679.91576,150.56291);
	ctx.lineTo(679.59244,140.53996);
	ctx.lineTo(677.97583,138.27672);
	ctx.lineTo(676.68255,137.46841);
	ctx.lineTo(675.87425,135.36683);
	ctx.lineTo(676.68255,134.55853);
	ctx.lineTo(678.29915,134.88185);
	ctx.lineTo(678.46081,133.26524);
	ctx.lineTo(676.03591,131.00199);
	ctx.lineTo(674.74262,128.41543);
	ctx.lineTo(672.15606,128.41543);
	ctx.lineTo(667.62956,126.96048);
	ctx.lineTo(662.13311,123.56561);
	ctx.lineTo(659.38488,123.56561);
	ctx.lineTo(658.73824,124.21226);
	ctx.lineTo(657.76827,123.72727);
	ctx.lineTo(654.69673,121.46403);
	ctx.lineTo(651.78684,123.24229);
	ctx.lineTo(648.87695,125.50554);
	ctx.lineTo(649.20027,129.06207);
	ctx.lineTo(650.17023,129.38539);
	ctx.lineTo(652.27182,129.87037);
	ctx.lineTo(652.7568,130.67867);
	ctx.lineTo(650.17023,131.48698);
	ctx.lineTo(647.58367,131.8103);
	ctx.lineTo(646.12872,133.58856);
	ctx.lineTo(645.8054,135.69015);
	ctx.lineTo(646.12872,137.30675);
	ctx.lineTo(646.45204,142.80321);
	ctx.lineTo(642.89551,144.9048);
	ctx.lineTo(642.24887,144.74313);
	ctx.lineTo(642.24887,140.53996);
	ctx.lineTo(643.54215,138.11506);
	ctx.lineTo(644.1888,135.69015);
	ctx.lineTo(643.38049,134.88185);
	ctx.lineTo(641.44057,135.69015);
	ctx.lineTo(640.4706,139.89332);
	ctx.lineTo(637.72238,141.02494);
	ctx.lineTo(635.94411,142.96487);
	ctx.lineTo(635.78245,143.93483);
	ctx.lineTo(636.42909,144.74313);
	ctx.lineTo(635.78245,147.3297);
	ctx.lineTo(633.5192,147.81468);
	ctx.lineTo(633.5192,148.94631);
	ctx.lineTo(634.32751,151.37121);
	ctx.lineTo(633.19588,157.51431);
	ctx.lineTo(631.57928,161.55582);
	ctx.lineTo(632.22592,166.24398);
	ctx.lineTo(632.7109,167.3756);
	ctx.lineTo(631.9026,169.80051);
	ctx.lineTo(631.57928,170.60881);
	ctx.lineTo(631.25596,173.35704);
	ctx.lineTo(634.81249,179.33847);
	ctx.lineTo(637.72238,185.80489);
	ctx.lineTo(639.17732,190.65471);
	ctx.lineTo(638.36902,195.34286);
	ctx.lineTo(637.39906,201.3243);
	ctx.lineTo(634.97415,206.49743);
	ctx.lineTo(634.65083,209.24566);
	ctx.lineTo(631.39196,212.33081);
	ctx.lineTo(635.80057,212.16876);
	ctx.lineTo(657.21906,209.90551);
	ctx.lineTo(664.4969,208.91845);
	ctx.lineTo(664.59327,210.5848);
	ctx.lineTo(671.44521,209.37234);
	ctx.lineTo(681.74329,207.86921);
	ctx.lineTo(685.59749,207.4083);
	ctx.lineTo(685.73554,206.82075);
	ctx.lineTo(685.8972,205.36581);
	ctx.lineTo(687.99878,201.64762);
	ctx.lineTo(689.99934,199.90977);
	ctx.lineTo(689.77705,194.85788);
	ctx.lineTo(691.37404,193.26089);
	ctx.lineTo(692.46466,192.91795);
	ctx.lineTo(692.68694,189.36142);
	ctx.lineTo(694.22271,186.3303);
	ctx.lineTo(695.2735,186.93652);
	ctx.lineTo(695.43516,187.58316);
	ctx.lineTo(696.24347,187.74482);
	ctx.lineTo(698.18339,186.77486);

	ctx.moveTo(567.49209,111.21318);
	ctx.lineTo(568.20837,110.63278);
	ctx.lineTo(570.9566,109.82447);
	ctx.lineTo(574.51313,107.56123);
	ctx.lineTo(574.51313,106.59126);
	ctx.lineTo(575.15978,105.94462);
	ctx.lineTo(581.14121,104.97466);
	ctx.lineTo(583.56612,103.03473);
	ctx.lineTo(587.93095,100.93315);
	ctx.lineTo(588.09261,99.639864);
	ctx.lineTo(590.03254,96.729975);
	ctx.lineTo(591.8108,95.921673);
	ctx.lineTo(593.10409,94.143408);
	ctx.lineTo(595.36733,91.880161);
	ctx.lineTo(599.73217,89.455254);
	ctx.lineTo(604.42032,88.970273);
	ctx.lineTo(605.55194,90.101896);
	ctx.lineTo(605.22862,91.071859);
	ctx.lineTo(601.51043,92.041822);
	ctx.lineTo(600.05549,95.113371);
	ctx.lineTo(597.79224,95.921673);
	ctx.lineTo(597.30726,98.34658);
	ctx.lineTo(594.88235,101.57979);
	ctx.lineTo(594.55903,104.16636);
	ctx.lineTo(595.36733,104.65134);
	ctx.lineTo(596.3373,103.51972);
	ctx.lineTo(599.89383,100.60983);
	ctx.lineTo(601.18711,101.90311);
	ctx.lineTo(603.45036,101.90311);
	ctx.lineTo(606.68357,102.87307);
	ctx.lineTo(608.13851,104.0047);
	ctx.lineTo(609.59345,107.07625);
	ctx.lineTo(612.34168,109.82447);
	ctx.lineTo(616.22153,109.66281);
	ctx.lineTo(617.67648,108.69285);
	ctx.lineTo(619.29308,109.98613);
	ctx.lineTo(620.90969,110.47112);
	ctx.lineTo(622.20297,109.66281);
	ctx.lineTo(623.33459,109.66281);
	ctx.lineTo(624.9512,108.69285);
	ctx.lineTo(628.99271,105.13632);
	ctx.lineTo(632.38758,104.0047);
	ctx.lineTo(639.01566,103.68138);
	ctx.lineTo(643.54215,101.74145);
	ctx.lineTo(646.12872,100.44817);
	ctx.lineTo(647.58367,100.60983);
	ctx.lineTo(647.58367,106.26794);
	ctx.lineTo(648.06865,106.59126);
	ctx.lineTo(650.97853,107.39957);
	ctx.lineTo(652.91846,106.91458);
	ctx.lineTo(659.06156,105.29798);
	ctx.lineTo(660.19318,104.16636);
	ctx.lineTo(661.64813,104.65134);
	ctx.lineTo(661.64813,111.60274);
	ctx.lineTo(664.88134,114.67429);
	ctx.lineTo(666.17462,115.32093);
	ctx.lineTo(667.4679,116.29089);
	ctx.lineTo(666.17462,116.61421);
	ctx.lineTo(665.36632,116.29089);
	ctx.lineTo(661.64813,115.80591);
	ctx.lineTo(659.54654,116.45255);
	ctx.lineTo(657.28329,116.29089);
	ctx.lineTo(654.05008,117.74584);
	ctx.lineTo(652.27182,117.74584);
	ctx.lineTo(646.45204,116.45255);
	ctx.lineTo(641.27891,116.61421);
	ctx.lineTo(639.33898,119.20078);
	ctx.lineTo(632.38758,119.84742);
	ctx.lineTo(629.96267,120.65572);
	ctx.lineTo(628.83105,123.72727);
	ctx.lineTo(627.53777,124.8589);
	ctx.lineTo(627.05279,124.69724);
	ctx.lineTo(625.59784,123.08063);
	ctx.lineTo(621.07135,125.50554);
	ctx.lineTo(620.42471,125.50554);
	ctx.lineTo(619.29308,123.88893);
	ctx.lineTo(618.48478,124.05059);
	ctx.lineTo(616.54486,128.41543);
	ctx.lineTo(615.57489,132.45694);
	ctx.lineTo(612.39377,139.45774);
	ctx.lineTo(611.21701,138.42347);
	ctx.lineTo(609.84527,137.39215);
	ctx.lineTo(607.90449,127.10413);
	ctx.lineTo(604.36001,125.73408);
	ctx.lineTo(602.30743,123.44785);
	ctx.lineTo(590.18707,120.70437);
	ctx.lineTo(587.3318,119.67473);
	ctx.lineTo(579.10138,117.50199);
	ctx.lineTo(571.21139,116.35887);
	ctx.fill();
	ctx.stroke();
}

function drawWY(ctx, fillStyle)
{
	/* State: WY */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(354.25168,143.77587);
	ctx.lineTo(343.70253,142.96884);
	ctx.lineTo(311.61454,139.67342);
	ctx.lineTo(295.38233,137.61582);
	ctx.lineTo(267.03312,133.50061);
	ctx.lineTo(247.14296,130.52852);
	ctx.lineTo(245.72387,141.70448);
	ctx.lineTo(241.88464,165.96502);
	ctx.lineTo(236.62631,196.37183);
	ctx.lineTo(235.09531,206.88801);
	ctx.lineTo(233.4256,218.77684);
	ctx.lineTo(239.94947,219.70521);
	ctx.lineTo(265.82883,222.20513);
	ctx.lineTo(286.39795,224.51213);
	ctx.lineTo(323.18167,228.62731);
	ctx.lineTo(347.00271,231.48733);
	ctx.lineTo(351.50702,187.295);
	ctx.lineTo(352.94689,161.91789);
	ctx.fill();
	ctx.stroke();
}

function drawMT(ctx, fillStyle)
{
	/* State: MT */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(356.67064,122.27385);
	ctx.lineTo(357.31846,111.12326);
	ctx.lineTo(359.57695,86.336144);
	ctx.bezierCurveTo(360.0342,81.306439,360.66066,77.864038,360.94869,70.926078)
	ctx.lineTo(361.88845,56.374463);
	ctx.lineTo(331.21413,53.56663);
	ctx.lineTo(301.95358,50.0101);
	ctx.lineTo(272.69304,45.968588);
	ctx.lineTo(240.36094,40.633793);
	ctx.lineTo(221.93165,37.238923);
	ctx.lineTo(189.208,30.306187);
	ctx.lineTo(184.72898,51.653719);
	ctx.lineTo(188.15832,59.19826);
	ctx.lineTo(186.78658,63.770712);
	ctx.lineTo(188.61556,68.343163);
	ctx.lineTo(191.81629,69.714902);
	ctx.lineTo(196.43711,80.484355);
	ctx.lineTo(199.13221,83.660878);
	ctx.lineTo(199.58945,84.803996);
	ctx.lineTo(203.01879,85.947114);
	ctx.lineTo(203.47604,88.004707);
	ctx.lineTo(196.38874,105.60866);
	ctx.lineTo(196.38874,108.12351);
	ctx.lineTo(198.90359,111.32422);
	ctx.lineTo(199.81807,111.32422);
	ctx.lineTo(204.61914,108.35213);
	ctx.lineTo(205.30502,107.20901);
	ctx.lineTo(206.90538,107.89488);
	ctx.lineTo(206.67675,113.1532);
	ctx.lineTo(209.42023,125.72745);
	ctx.lineTo(212.39232,128.24229);
	ctx.lineTo(213.3068,128.92816);
	ctx.lineTo(215.13579,131.21438);
	ctx.lineTo(214.67854,134.64373);
	ctx.lineTo(215.36441,138.07306);
	ctx.lineTo(216.50753,138.98756);
	ctx.lineTo(218.79375,136.70133);
	ctx.lineTo(221.53722,136.70133);
	ctx.lineTo(224.73794,138.30169);
	ctx.lineTo(227.25279,137.3872);
	ctx.lineTo(231.368,137.3872);
	ctx.lineTo(235.02595,138.98756);
	ctx.lineTo(237.76943,138.53031);
	ctx.lineTo(238.22667,135.55821);
	ctx.lineTo(241.19876,134.87235);
	ctx.lineTo(242.5705,136.24409);
	ctx.lineTo(243.02775,139.4448);
	ctx.lineTo(244.80717,140.80977);
	ctx.lineTo(246.34057,129.2447);
	ctx.lineTo(267.03312,132.21679);
	ctx.lineTo(295.22184,136.17153);
	ctx.lineTo(311.77502,138.06865);
	ctx.lineTo(343.2211,141.52455);
	ctx.lineTo(354.21124,143.04862);
	ctx.lineTo(355.26321,127.62136);
	ctx.fill();
	ctx.stroke();
}

function drawID(ctx, fillStyle)
{
	/* State: ID */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(162.11948,180.95969);
	ctx.bezierCurveTo(139.5086,176.61641,147.97221,178.11269,140.97881,176.60895)
	ctx.lineTo(145.40585,159.10648);
	ctx.lineTo(149.74968,141.38823);
	ctx.lineTo(151.12142,137.15871);
	ctx.lineTo(153.63626,131.21453);
	ctx.lineTo(152.37884,128.9283);
	ctx.lineTo(149.86398,129.04261);
	ctx.lineTo(149.06381,128.01381);
	ctx.lineTo(149.52106,126.8707);
	ctx.lineTo(149.86398,123.78429);
	ctx.lineTo(154.32213,118.29734);
	ctx.lineTo(156.15111,117.8401);
	ctx.lineTo(157.29422,116.69699);
	ctx.lineTo(157.86578,113.49627);
	ctx.lineTo(158.78026,112.81041);
	ctx.lineTo(162.66685,106.98053);
	ctx.lineTo(166.55344,102.6367);
	ctx.lineTo(166.78206,98.864432);
	ctx.lineTo(163.35272,96.235269);
	ctx.lineTo(162.03814,91.834286);
	ctx.lineTo(162.43823,82.174988);
	ctx.lineTo(166.09619,65.714155);
	ctx.lineTo(170.55433,44.909503);
	ctx.lineTo(174.3266,31.420781);
	ctx.lineTo(175.08853,27.617595);
	ctx.lineTo(188.08467,30.145706);
	ctx.lineTo(183.92659,51.653719);
	ctx.lineTo(186.8745,59.358741);
	ctx.lineTo(185.82372,63.931193);
	ctx.lineTo(187.81318,68.503644);
	ctx.lineTo(191.0139,70.196335);
	ctx.lineTo(195.47424,80.002923);
	ctx.lineTo(198.16934,83.821359);
	ctx.lineTo(198.78707,84.964477);
	ctx.lineTo(202.21641,86.107595);
	ctx.lineTo(202.67365,88.646611);
	ctx.lineTo(195.74683,105.44818);
	ctx.lineTo(196.06779,108.76541);
	ctx.lineTo(198.7431,111.64517);
	ctx.lineTo(200.62046,112.1266);
	ctx.lineTo(205.42153,108.51261);
	ctx.lineTo(205.78645,108.01139);
	ctx.lineTo(205.94251,108.85775);
	ctx.lineTo(206.19532,112.99272);
	ctx.lineTo(208.77832,125.88793);
	ctx.lineTo(212.23184,128.56324);
	ctx.lineTo(212.6649,129.40959);
	ctx.lineTo(214.81483,131.85629);
	ctx.lineTo(214.03664,134.64373);
	ctx.lineTo(214.7225,138.39401);
	ctx.lineTo(216.66801,139.30851);
	ctx.lineTo(218.79375,137.6642);
	ctx.lineTo(221.37674,137.18276);
	ctx.lineTo(224.73794,138.78312);
	ctx.lineTo(227.25279,138.18958);
	ctx.lineTo(231.04705,138.0291);
	ctx.lineTo(235.02595,139.62946);
	ctx.lineTo(237.76943,139.3327);
	ctx.lineTo(238.70811,137.0025);
	ctx.lineTo(241.19876,135.35378);
	ctx.lineTo(241.9286,137.04647);
	ctx.lineTo(242.54631,139.28432);
	ctx.lineTo(244.85453,141.82336);
	ctx.lineTo(241.08226,165.80454);
	ctx.lineTo(235.9382,194.8133);
	ctx.lineTo(231.779,194.4946);
	ctx.lineTo(223.59476,192.96239);
	ctx.lineTo(213.78818,191.13341);
	ctx.lineTo(201.62502,188.75485);
	ctx.lineTo(189.09694,186.25099);
	ctx.lineTo(180.61372,184.41102);
	ctx.lineTo(171.35451,182.74252);
	ctx.fill();
	ctx.stroke();
}

function drawWA(ctx, fillStyle)
{
	/* State: WA */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(93.573239,6.3617734);
	ctx.lineTo(97.938071,7.8167177);
	ctx.lineTo(107.6377,10.564946);
	ctx.lineTo(116.2057,12.504871);
	ctx.lineTo(136.2516,18.162988);
	ctx.lineTo(159.20739,23.821104);
	ctx.lineTo(174.36801,27.215777);
	ctx.lineTo(173.36373,31.099829);
	ctx.lineTo(169.27051,44.909503);
	ctx.lineTo(164.81238,65.714155);
	ctx.lineTo(161.63584,81.854036);
	ctx.lineTo(161.28429,91.232806);
	ctx.lineTo(148.10315,87.33877);
	ctx.lineTo(132.53264,83.955591);
	ctx.lineTo(118.86585,84.551329);
	ctx.lineTo(117.28528,83.01913);
	ctx.lineTo(111.95881,84.916253);
	ctx.lineTo(107.9821,84.665645);
	ctx.lineTo(105.2606,82.904814);
	ctx.lineTo(103.68223,83.430208);
	ctx.lineTo(99.476903,83.201576);
	ctx.lineTo(97.601755,81.829846);
	ctx.lineTo(92.824862,80.093194);
	ctx.lineTo(91.382778,79.886558);
	ctx.lineTo(86.397035,78.560984);
	ctx.lineTo(84.614222,80.069004);
	ctx.lineTo(78.922841,79.726077);
	ctx.lineTo(74.101997,75.931831);
	ctx.lineTo(74.30643,75.131651);
	ctx.lineTo(74.374575,67.197996);
	ctx.lineTo(72.248826,63.31142);
	ctx.lineTo(68.133618,62.57938);
	ctx.lineTo(67.768708,60.225014);
	ctx.lineTo(65.2543,59.597968);
	ctx.lineTo(62.372763,59.063086);
	ctx.lineTo(60.594498,60.033049);
	ctx.lineTo(58.331251,57.123161);
	ctx.lineTo(58.654572,54.213272);
	ctx.lineTo(61.4028,53.889951);
	ctx.lineTo(63.019405,49.84844);
	ctx.lineTo(60.432837,48.716816);
	ctx.lineTo(60.594498,44.998625);
	ctx.lineTo(64.959331,44.351984);
	ctx.lineTo(62.211103,41.603756);
	ctx.lineTo(60.756158,34.490695);
	ctx.lineTo(61.4028,31.580807);
	ctx.lineTo(61.4028,23.659444);
	ctx.lineTo(59.624535,20.426234);
	ctx.lineTo(61.887782,11.049927);
	ctx.lineTo(63.989368,11.534908);
	ctx.lineTo(66.414275,14.444797);
	ctx.lineTo(69.162503,17.031364);
	ctx.lineTo(72.395712,18.97129);
	ctx.lineTo(76.922205,21.072876);
	ctx.lineTo(79.993756,21.719518);
	ctx.lineTo(82.903645,23.174462);
	ctx.lineTo(86.298518,24.144425);
	ctx.lineTo(88.561764,23.982765);
	ctx.lineTo(88.561764,21.557857);
	ctx.lineTo(89.855048,20.426234);
	ctx.lineTo(91.956634,19.13295);
	ctx.lineTo(92.279955,20.264574);
	ctx.lineTo(92.603276,22.042839);
	ctx.lineTo(90.340029,22.52782);
	ctx.lineTo(90.016708,24.629406);
	ctx.lineTo(91.794974,26.084351);
	ctx.lineTo(92.926597,28.509258);
	ctx.lineTo(93.573239,30.449183);
	ctx.lineTo(95.028183,30.287523);
	ctx.lineTo(95.189843,28.994239);
	ctx.lineTo(94.219881,27.700955);
	ctx.lineTo(93.734899,24.467746);
	ctx.lineTo(94.543201,22.689481);
	ctx.lineTo(93.89656,21.234537);
	ctx.lineTo(93.89656,18.97129);
	ctx.lineTo(95.674825,15.41476);
	ctx.lineTo(94.543201,12.828192);
	ctx.lineTo(92.118294,7.9783781);
	ctx.lineTo(92.441615,7.1700758);

	ctx.moveTo(84.116548,12.340738);
	ctx.lineTo(86.137312,12.179078);
	ctx.lineTo(86.622294,13.553197);
	ctx.lineTo(88.158073,11.936582);
	ctx.lineTo(90.502155,11.936582);
	ctx.lineTo(91.310458,13.472361);
	ctx.lineTo(89.774678,15.169801);
	ctx.lineTo(90.42133,15.978114);
	ctx.lineTo(89.693853,17.998875);
	ctx.lineTo(88.319734,18.403021);
	ctx.bezierCurveTo(88.319734,18.403021,87.430596,18.483857,87.430596,18.160536)
	ctx.bezierCurveTo(87.430596,17.837215,88.885551,15.573958,88.885551,15.573958)
	ctx.lineTo(87.188111,15.008141);
	ctx.lineTo(86.86479,16.463095);
	ctx.lineTo(86.137312,17.109737);
	ctx.lineTo(84.60153,14.84648);
	ctx.fill();
	ctx.stroke();
}

function drawTX(ctx, fillStyle)
{
	/* State: TX */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(357.05332,333.3739);
	ctx.lineTo(379.74411,334.45984);
	ctx.lineTo(410.8368,335.60296);
	ctx.lineTo(408.50219,359.05876);
	ctx.lineTo(408.20543,377.21228);
	ctx.lineTo(408.27357,379.29407);
	ctx.lineTo(412.6174,383.1125);
	ctx.lineTo(414.35405,383.93466);
	ctx.lineTo(416.16326,384.18747);
	ctx.lineTo(416.84913,382.93225);
	ctx.lineTo(417.73945,383.79837);
	ctx.lineTo(419.47609,384.2798);
	ctx.lineTo(421.08086,383.54998);
	ctx.lineTo(422.21956,383.95885);
	ctx.lineTo(421.92279,387.364);
	ctx.lineTo(426.19848,388.39501);
	ctx.lineTo(428.8738,389.21718);
	ctx.lineTo(432.82854,389.74256);
	ctx.lineTo(435.02242,391.57154);
	ctx.lineTo(438.27152,389.99537);
	ctx.lineTo(441.05896,390.36028);
	ctx.lineTo(443.09237,393.14772);
	ctx.lineTo(444.16733,393.46868);
	ctx.lineTo(444.00686,395.43395);
	ctx.lineTo(447.09547,396.60124);
	ctx.lineTo(449.86312,394.79644);
	ctx.lineTo(451.37114,395.16136);
	ctx.lineTo(453.72552,395.32184);
	ctx.lineTo(454.15859,397.19478);
	ctx.lineTo(458.79918,399.18423);
	ctx.lineTo(461.45473,398.9798);
	ctx.lineTo(463.4442,394.86459);
	ctx.lineTo(463.78492,394.86459);
	ctx.lineTo(464.92804,396.76172);
	ctx.lineTo(469.3642,397.76853);
	ctx.lineTo(472.7012,398.9798);
	ctx.lineTo(475.99425,399.73382);
	ctx.lineTo(478.14419,398.9798);
	ctx.lineTo(478.99053,396.46496);
	ctx.lineTo(482.69245,396.46496);
	ctx.lineTo(484.58958,397.21896);
	ctx.lineTo(487.654,395.64279);
	ctx.lineTo(488.31569,395.64279);
	ctx.lineTo(488.6806,396.76172);
	ctx.lineTo(492.95629,396.76172);
	ctx.lineTo(495.35904,395.5065);
	ctx.lineTo(497.02754,395.80326);
	ctx.lineTo(498.44324,397.67621);
	ctx.lineTo(501.32299,399.34471);
	ctx.lineTo(504.84467,400.41968);
	ctx.lineTo(507.58814,401.83759);
	ctx.lineTo(510.03484,403.45991);
	ctx.lineTo(513.32788,402.56962);
	ctx.lineTo(515.26897,403.55225);
	ctx.lineTo(515.78008,413.69188);
	ctx.lineTo(516.11532,423.39405);
	ctx.lineTo(516.80118,432.92806);
	ctx.lineTo(517.32658,436.97511);
	ctx.lineTo(520.00191,441.57175);
	ctx.lineTo(521.07687,445.63859);
	ctx.lineTo(524.93927,451.92792);
	ctx.lineTo(525.48884,454.80769);
	ctx.lineTo(526.01424,455.8145);
	ctx.lineTo(525.32836,463.31069);
	ctx.lineTo(522.67723,467.69847);
	ctx.lineTo(523.63568,470.55845);
	ctx.lineTo(523.27076,473.0733);
	ctx.lineTo(522.42442,480.38923);
	ctx.lineTo(521.05268,483.10852);
	ctx.lineTo(521.65692,487.49475);
	ctx.lineTo(515.99204,489.07993);
	ctx.lineTo(506.13075,493.60643);
	ctx.lineTo(505.16079,495.54635);
	ctx.lineTo(502.57422,497.48628);
	ctx.lineTo(500.47264,498.94122);
	ctx.lineTo(499.17935,499.74952);
	ctx.lineTo(493.52124,505.08432);
	ctx.lineTo(490.77301,507.18591);
	ctx.lineTo(485.43821,510.41911);
	ctx.lineTo(479.7801,512.84402);
	ctx.lineTo(473.47534,516.23889);
	ctx.lineTo(471.69708,517.69384);
	ctx.lineTo(465.8773,521.25037);
	ctx.lineTo(462.48243,521.89701);
	ctx.lineTo(458.60258,527.39346);
	ctx.lineTo(454.56107,527.71679);
	ctx.lineTo(453.5911,529.65671);
	ctx.lineTo(455.85435,531.59664);
	ctx.lineTo(454.3994,537.09309);
	ctx.lineTo(453.10612,541.61959);
	ctx.lineTo(451.9745,545.49944);
	ctx.lineTo(451.1662,550.02593);
	ctx.lineTo(451.9745,552.45084);
	ctx.lineTo(453.75276,559.40224);
	ctx.lineTo(454.72273,565.54533);
	ctx.lineTo(456.50099,568.29356);
	ctx.lineTo(455.53103,569.74851);
	ctx.lineTo(452.45948,571.68843);
	ctx.lineTo(446.80136,567.80858);
	ctx.lineTo(441.30491,566.67696);
	ctx.lineTo(440.01162,567.16194);
	ctx.lineTo(436.77841,566.5153);
	ctx.lineTo(432.57524,563.44375);
	ctx.lineTo(427.40211,562.31213);
	ctx.lineTo(419.80406,558.91726);
	ctx.lineTo(417.70248,555.0374);
	ctx.lineTo(416.40919,548.57099);
	ctx.lineTo(413.17599,546.63106);
	ctx.lineTo(412.52934,544.36781);
	ctx.lineTo(413.17599,543.72117);
	ctx.lineTo(413.49931,540.3263);
	ctx.lineTo(412.20602,539.67966);
	ctx.lineTo(411.55938,538.7097);
	ctx.lineTo(412.85266,534.34486);
	ctx.lineTo(411.23606,532.08162);
	ctx.lineTo(408.00285,530.78833);
	ctx.lineTo(404.60798,526.4235);
	ctx.lineTo(401.05145,519.79542);
	ctx.lineTo(396.84828,517.20885);
	ctx.lineTo(397.00994,515.26893);
	ctx.lineTo(391.67514,502.98273);
	ctx.lineTo(390.86684,498.77956);
	ctx.lineTo(389.08858,496.83964);
	ctx.lineTo(388.92692,495.38469);
	ctx.lineTo(382.94548,490.0499);
	ctx.lineTo(380.35891,486.97835);
	ctx.lineTo(380.35891,485.84672);
	ctx.lineTo(377.77234,483.74514);
	ctx.lineTo(370.9826,482.61351);
	ctx.lineTo(363.54622,481.96687);
	ctx.lineTo(360.47467,479.70363);
	ctx.lineTo(355.94818,481.48189);
	ctx.lineTo(352.39165,482.93684);
	ctx.lineTo(350.1284,486.17004);
	ctx.lineTo(349.15844,489.88824);
	ctx.lineTo(344.79361,496.03133);
	ctx.lineTo(342.3687,498.45624);
	ctx.lineTo(339.78213,497.48628);
	ctx.lineTo(338.00387,496.35465);
	ctx.lineTo(336.06394,495.70801);
	ctx.lineTo(332.18409,493.44477);
	ctx.lineTo(332.18409,492.79812);
	ctx.lineTo(330.40583,490.8582);
	ctx.lineTo(325.23269,488.75661);
	ctx.lineTo(317.79631,480.99691);
	ctx.lineTo(315.53306,476.30876);
	ctx.lineTo(315.53306,468.22573);
	ctx.lineTo(312.29985,461.75931);
	ctx.lineTo(311.81487,459.01109);
	ctx.lineTo(310.19827,458.04112);
	ctx.lineTo(309.06664,455.93954);
	ctx.lineTo(304.05517,453.83795);
	ctx.lineTo(302.76189,452.22135);
	ctx.lineTo(295.64882,444.29998);
	ctx.lineTo(294.35554,441.06677);
	ctx.lineTo(289.66738,438.80352);
	ctx.lineTo(288.21243,434.43865);
	ctx.lineTo(285.62584,431.52878);
	ctx.lineTo(283.68593,431.04382);
	ctx.lineTo(283.0367,426.36618);
	ctx.lineTo(291.03857,427.05207);
	ctx.lineTo(320.07356,429.79552);
	ctx.lineTo(349.10864,431.39588);
	ctx.lineTo(351.39487,407.61912);
	ctx.lineTo(355.28142,352.0641);
	ctx.lineTo(356.88181,333.31678);
	ctx.lineTo(358.25355,333.34536);

	ctx.moveTo(457.2302,567.32304);
	ctx.lineTo(456.66439,560.20996);
	ctx.lineTo(453.91615,553.01604);
	ctx.lineTo(453.35033,545.98379);
	ctx.lineTo(454.88611,537.73908);
	ctx.lineTo(458.20017,530.86849);
	ctx.lineTo(461.67587,525.45284);
	ctx.lineTo(464.82827,521.89629);
	ctx.lineTo(465.47491,522.13879);
	ctx.lineTo(460.70591,528.76689);
	ctx.lineTo(456.34107,535.31417);
	ctx.lineTo(454.3203,541.94226);
	ctx.lineTo(453.99698,547.11542);
	ctx.lineTo(454.88611,553.25854);
	ctx.lineTo(457.47269,560.45246);
	ctx.lineTo(457.95767,565.6256);
	ctx.lineTo(458.11933,567.08056);
	ctx.lineTo(457.2302,567.32304);
	ctx.fill();
	ctx.stroke();
}

function drawAZ(ctx, fillStyle)
{
	/* State: AZ */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(137.74699,387.50041);
	ctx.lineTo(135.11998,389.65874);
	ctx.lineTo(134.79666,391.11369);
	ctx.lineTo(135.28164,392.08365);
	ctx.lineTo(154.19591,402.75324);
	ctx.lineTo(166.32045,410.35128);
	ctx.lineTo(181.03155,418.91929);
	ctx.lineTo(197.84424,428.94224);
	ctx.lineTo(210.13044,431.36715);
	ctx.lineTo(235.25838,434.07206);
	ctx.lineTo(237.7892,421.56511);
	ctx.lineTo(241.54187,394.32217);
	ctx.lineTo(248.50673,341.44101);
	ctx.lineTo(252.76399,310.47532);
	ctx.lineTo(228.16728,306.79655);
	ctx.lineTo(200.96119,302.2241);
	ctx.lineTo(167.53204,295.90642);
	ctx.lineTo(164.61014,313.99826);
	ctx.lineTo(164.1529,314.45551);
	ctx.lineTo(162.43823,317.08467);
	ctx.lineTo(159.92338,316.97035);
	ctx.lineTo(158.66596,314.22688);
	ctx.lineTo(155.92249,313.88395);
	ctx.lineTo(155.00799,312.74084);
	ctx.lineTo(154.09351,312.74084);
	ctx.lineTo(153.17901,313.3124);
	ctx.lineTo(151.23572,314.3412);
	ctx.lineTo(151.12142,321.31418);
	ctx.lineTo(150.89278,323.02885);
	ctx.lineTo(150.32124,335.60309);
	ctx.lineTo(148.83519,337.775);
	ctx.lineTo(148.26363,341.09003);
	ctx.lineTo(151.0071,346.00542);
	ctx.lineTo(152.26452,351.8353);
	ctx.lineTo(153.06471,352.8641);
	ctx.lineTo(154.09351,353.43566);
	ctx.lineTo(153.97919,355.72188);
	ctx.lineTo(152.37884,357.09361);
	ctx.lineTo(148.9495,358.80828);
	ctx.lineTo(147.00621,360.75158);
	ctx.lineTo(145.52016,364.40953);
	ctx.lineTo(144.9486,369.32492);
	ctx.lineTo(142.09082,372.06839);
	ctx.lineTo(140.03322,372.75426);
	ctx.lineTo(139.91891,378.58414);
	ctx.lineTo(139.46166,380.29881);
	ctx.lineTo(139.91891,381.09899);
	ctx.lineTo(143.57687,381.67053);
	ctx.lineTo(143.00531,384.41401);
	ctx.lineTo(141.51926,386.58592);
	ctx.fill();
	ctx.stroke();
}

function drawNV(ctx, fillStyle)
{
	/* State: NV */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(140.65786,177.57182);
	ctx.lineTo(161.63805,182.08304);
	ctx.lineTo(171.35451,184.02634);
	ctx.lineTo(180.61372,185.85531);
	ctx.lineTo(187.22838,187.48864);
	ctx.lineTo(186.67001,193.35369);
	ctx.lineTo(183.12636,210.68284);
	ctx.lineTo(179.03314,230.66313);
	ctx.lineTo(177.08985,240.3818);
	ctx.lineTo(174.91793,253.66389);
	ctx.lineTo(171.76337,270.07854);
	ctx.lineTo(168.24171,285.76337);
	ctx.lineTo(166.27332,295.94373);
	ctx.lineTo(163.80775,312.71445);
	ctx.lineTo(163.35051,313.8136);
	ctx.lineTo(162.27775,316.28228);
	ctx.lineTo(160.40481,316.16797);
	ctx.lineTo(159.30786,313.4245);
	ctx.lineTo(156.56439,312.92108);
	ctx.lineTo(155.16847,311.93845);
	ctx.lineTo(153.13064,312.25941);
	ctx.lineTo(152.21615,312.99145);
	ctx.lineTo(150.91477,314.3412);
	ctx.lineTo(150.47951,321.31418);
	ctx.lineTo(149.92992,323.02885);
	ctx.lineTo(149.51885,335.12166);
	ctx.lineTo(148.19675,336.83582);
	ctx.lineTo(146.32033,334.57429);
	ctx.lineTo(131.80281,311.82634);
	ctx.lineTo(112.36989,282.79128);
	ctx.lineTo(89.621946,248.95514);
	ctx.lineTo(77.240446,230.3731);
	ctx.lineTo(78.87668,223.80666);
	ctx.lineTo(85.849676,197.858);
	ctx.lineTo(93.737155,166.51015);
	ctx.lineTo(127.34467,174.65279);
	ctx.lineTo(141.06203,177.62488);
	ctx.fill();
	ctx.stroke();
}

function drawUT(ctx, fillStyle)
{
	/* State: UT */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(252.97063,309.30699);
	ctx.lineTo(228.32776,305.83369);
	ctx.lineTo(201.76357,300.94029);
	ctx.lineTo(167.93683,294.92034);
	ctx.lineTo(169.52553,285.76337);
	ctx.lineTo(172.72624,270.55998);
	ctx.lineTo(176.04127,253.98484);
	ctx.lineTo(178.21319,240.3818);
	ctx.lineTo(180.15648,231.46552);
	ctx.lineTo(183.92875,211.00379);
	ctx.lineTo(187.4724,193.51417);
	ctx.lineTo(188.58694,187.94149);
	ctx.lineTo(201.30406,190.19914);
	ctx.lineTo(213.30675,192.25674);
	ctx.lineTo(223.59476,194.08573);
	ctx.lineTo(231.93948,195.45747);
	ctx.lineTo(235.61725,195.93663);
	ctx.lineTo(234.13245,206.56705);
	ctx.lineTo(231.82083,219.73971);
	ctx.lineTo(239.62852,220.66808);
	ctx.lineTo(256.03504,222.47287);
	ctx.lineTo(264.24601,223.32851);
	ctx.lineTo(262.11553,245.29707);
	ctx.lineTo(258.91482,267.86257);
	ctx.lineTo(255.16215,295.68875);
	ctx.lineTo(253.49601,306.79655);
	ctx.fill();
	ctx.stroke();
}

function drawCO(ctx, fillStyle)
{
	/* State: CO */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(378.62078,256.79629);
	ctx.lineTo(380.06066,235.51461);
	ctx.lineTo(347.96558,232.45018);
	ctx.lineTo(323.50262,229.75064);
	ctx.lineTo(286.23746,225.63547);
	ctx.lineTo(265.5471,223.12065);
	ctx.lineTo(262.91791,245.29707);
	ctx.lineTo(259.7172,267.70209);
	ctx.lineTo(255.96454,295.68875);
	ctx.lineTo(254.45888,306.79655);
	ctx.lineTo(254.20828,309.55981);
	ctx.lineTo(288.13455,313.35406);
	ctx.lineTo(325.87526,317.62063);
	ctx.lineTo(357.83587,320.7865);
	ctx.lineTo(374.44407,321.63284);
	ctx.fill();
	ctx.stroke();
}

function drawNM(ctx, fillStyle)
{
	/* State: NM */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(282.72425,431.045);
	ctx.lineTo(282.07384,424.9219);
	ctx.lineTo(290.71762,425.4473);
	ctx.lineTo(320.23405,428.5117);
	ctx.lineTo(348.62721,429.95159);
	ctx.lineTo(350.59248,407.61912);
	ctx.lineTo(354.31856,351.74315);
	ctx.lineTo(355.43752,332.35392);
	ctx.lineTo(357.45116,332.70345);
	ctx.lineTo(357.43687,321.62845);
	ctx.lineTo(325.23335,319.22539);
	ctx.lineTo(288.29503,314.79835);
	ctx.lineTo(253.83017,310.68314);
	ctx.lineTo(249.63006,341.44101);
	ctx.lineTo(242.6652,394.64312);
	ctx.lineTo(238.91254,421.56511);
	ctx.lineTo(236.86315,434.87445);
	ctx.lineTo(252.32382,436.8636);
	ctx.lineTo(253.6171,426.84065);
	ctx.lineTo(270.26813,429.42722);
	ctx.fill();
	ctx.stroke();
}

function drawOR(ctx, fillStyle)
{
	/* State: OR */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(140.30581,176.68623);
	ctx.lineTo(144.60346,158.78553);
	ctx.lineTo(149.26824,140.9068);
	ctx.lineTo(150.31903,136.67728);
	ctx.lineTo(152.6734,131.05405);
	ctx.lineTo(152.05789,129.89117);
	ctx.lineTo(149.54303,129.84499);
	ctx.lineTo(148.26143,128.17429);
	ctx.lineTo(148.71867,126.71022);
	ctx.lineTo(149.22208,123.46334);
	ctx.lineTo(153.68023,117.97639);
	ctx.lineTo(155.50921,116.87724);
	ctx.lineTo(156.65232,115.73413);
	ctx.lineTo(158.13836,112.1685);
	ctx.lineTo(162.18542,106.4991);
	ctx.lineTo(165.75105,102.6367);
	ctx.lineTo(165.97967,99.185383);
	ctx.lineTo(162.71081,96.716701);
	ctx.lineTo(161.50192,92.206659);
	ctx.lineTo(148.26363,88.462106);
	ctx.lineTo(133.17454,84.918456);
	ctx.lineTo(117.74252,85.032762);
	ctx.lineTo(117.28528,83.661033);
	ctx.lineTo(111.79833,85.718637);
	ctx.lineTo(107.34019,85.147078);
	ctx.lineTo(104.93965,83.546717);
	ctx.lineTo(103.68223,84.232592);
	ctx.lineTo(98.99547,84.00396);
	ctx.lineTo(97.280804,82.632231);
	ctx.lineTo(92.022478,80.574627);
	ctx.lineTo(91.222297,80.688943);
	ctx.lineTo(86.878467,79.202887);
	ctx.lineTo(84.935176,81.03187);
	ctx.lineTo(78.762364,80.688943);
	ctx.lineTo(72.818181,76.573734);
	ctx.lineTo(73.504046,75.773554);
	ctx.lineTo(73.732667,68.000381);
	ctx.lineTo(71.446442,64.113804);
	ctx.lineTo(67.331234,63.542245);
	ctx.lineTo(66.645369,61.027398);
	ctx.lineTo(64.291437,60.560833);
	ctx.lineTo(58.492912,62.619617);
	ctx.lineTo(56.229665,69.086035);
	ctx.lineTo(52.996456,79.108984);
	ctx.lineTo(49.763246,85.575403);
	ctx.lineTo(44.751772,99.639864);
	ctx.lineTo(38.285353,113.21934);
	ctx.lineTo(30.20233,125.82886);
	ctx.lineTo(28.262404,128.73875);
	ctx.lineTo(27.454102,137.30675);
	ctx.lineTo(26.160818,143.28819);
	ctx.lineTo(28.86901,146.81562);
	ctx.lineTo(35.598871,149.06684);
	ctx.lineTo(47.190476,152.35988);
	ctx.lineTo(55.055974,154.89892);
	ctx.lineTo(67.469737,158.5327);
	ctx.lineTo(80.797995,162.12252);
	ctx.lineTo(93.965776,165.68813);
	ctx.fill();
	ctx.stroke();
}

function drawND(ctx, fillStyle)
{
	/* State: ND */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(471.30528,127.66846);
	ctx.lineTo(470.94037,120.17229);
	ctx.lineTo(468.95092,112.85637);
	ctx.lineTo(467.12193,99.207152);
	ctx.lineTo(466.66469,89.376374);
	ctx.lineTo(464.67523,86.267982);
	ctx.lineTo(463.07487,80.917336);
	ctx.lineTo(463.07487,70.629316);
	ctx.lineTo(463.76073,66.742729);
	ctx.lineTo(461.64538,61.243718);
	ctx.lineTo(433.22188,60.679691);
	ctx.lineTo(414.63093,60.033049);
	ctx.lineTo(388.11861,58.739765);
	ctx.lineTo(363.17227,56.855896);
	ctx.lineTo(361.91155,71.086559);
	ctx.lineTo(360.53981,86.175663);
	ctx.lineTo(358.28133,111.12326);
	ctx.lineTo(357.79515,122.14348);
	ctx.lineTo(414.61127,125.90763);
	ctx.fill();
	ctx.stroke();
}

function drawSD(ctx, fillStyle)
{
	/* State: SD */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(472.79706,203.1809);
	ctx.lineTo(471.84336,202.10003);
	ctx.lineTo(470.32265,198.47334);
	ctx.lineTo(472.15163,194.77142);
	ctx.lineTo(473.20241,189.21633);
	ctx.lineTo(470.61942,187.15872);
	ctx.lineTo(470.32265,184.41526);
	ctx.lineTo(470.91618,181.41897);
	ctx.lineTo(473.06612,180.61658);
	ctx.lineTo(473.36289,174.88124);
	ctx.lineTo(473.29475,144.79538);
	ctx.lineTo(472.67702,141.82329);
	ctx.lineTo(468.56181,138.23348);
	ctx.lineTo(467.57918,136.24402);
	ctx.lineTo(467.57918,134.3227);
	ctx.lineTo(469.4763,133.0433);
	ctx.lineTo(471.00852,131.19013);
	ctx.lineTo(471.19098,128.47084);
	ctx.lineTo(413.80889,126.87049);
	ctx.lineTo(357.63468,122.9839);
	ctx.lineTo(356.86798,128.26326);
	ctx.lineTo(355.25497,144.1315);
	ctx.lineTo(353.90976,162.07837);
	ctx.lineTo(352.30941,186.67509);
	ctx.lineTo(368.33718,187.70389);
	ctx.lineTo(387.97453,188.847);
	ctx.lineTo(405.96758,190.15059);
	ctx.lineTo(429.74434,191.45417);
	ctx.lineTo(440.4896,190.67598);
	ctx.lineTo(443.34959,192.96221);
	ctx.lineTo(447.66923,195.93431);
	ctx.lineTo(448.65187,196.68831);
	ctx.lineTo(452.19331,195.798);
	ctx.lineTo(456.24038,195.50124);
	ctx.lineTo(458.98385,195.43309);
	ctx.lineTo(462.09665,196.64436);
	ctx.lineTo(466.64491,198.08424);
	ctx.lineTo(469.77747,199.84507);
	ctx.lineTo(470.3952,201.76638);
	ctx.lineTo(471.30969,203.66351);
	ctx.lineTo(472.01534,203.18207);
	ctx.fill();
	ctx.stroke();
}

function drawNE(ctx, fillStyle)
{
	/* State: NE */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(484.24444,246.9897);
	ctx.lineTo(485.61618,249.66503);
	ctx.lineTo(485.70851,251.79078);
	ctx.lineTo(488.06288,255.51689);
	ctx.lineTo(490.78217,258.66923);
	ctx.lineTo(485.73269,258.66923);
	ctx.lineTo(442.25013,257.73055);
	ctx.lineTo(401.46327,256.84025);
	ctx.lineTo(380.27171,255.8796);
	ctx.lineTo(381.34448,234.55175);
	ctx.lineTo(347.96558,231.80828);
	ctx.lineTo(352.30941,187.79842);
	ctx.lineTo(367.85574,188.82723);
	ctx.lineTo(387.97453,189.97033);
	ctx.lineTo(405.8071,191.11345);
	ctx.lineTo(429.58386,192.25656);
	ctx.lineTo(440.32912,191.79932);
	ctx.lineTo(442.38672,194.08554);
	ctx.lineTo(447.1878,197.05764);
	ctx.lineTo(448.33091,197.97213);
	ctx.lineTo(452.67474,196.60039);
	ctx.lineTo(456.56133,196.14315);
	ctx.lineTo(459.3048,195.91452);
	ctx.lineTo(461.13378,197.28626);
	ctx.lineTo(466.16348,198.88662);
	ctx.lineTo(469.13557,200.48698);
	ctx.lineTo(469.59282,202.08734);
	ctx.lineTo(470.50731,204.14494);
	ctx.lineTo(472.33629,204.14494);
	ctx.lineTo(473.13427,204.19111);
	ctx.lineTo(474.11689,209.40326);
	ctx.lineTo(476.86037,217.42924);
	ctx.lineTo(478.09582,222.06983);
	ctx.lineTo(480.22156,225.88828);
	ctx.lineTo(480.74695,230.82564);
	ctx.lineTo(482.18684,235.10132);
	ctx.lineTo(482.73641,241.57092);
	ctx.fill();
	ctx.stroke();
}

function drawIA(ctx, fillStyle)
{
	/* State: IA */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(566.59351,201.62843);
	ctx.lineTo(566.76414,203.57088);
	ctx.lineTo(569.05036,204.71064);
	ctx.lineTo(570.1918,205.96722);
	ctx.lineTo(570.53556,207.22883);
	ctx.lineTo(574.42215,210.43123);
	ctx.lineTo(575.10802,212.60398);
	ctx.lineTo(574.30868,215.46595);
	ctx.lineTo(572.82012,219.01043);
	ctx.lineTo(572.02078,221.75222);
	ctx.lineTo(569.84803,223.35426);
	ctx.lineTo(568.13252,223.92666);
	ctx.lineTo(562.64725,225.41186);
	ctx.lineTo(561.96138,227.69475);
	ctx.lineTo(561.16204,229.9793);
	ctx.lineTo(561.73443,231.35104);
	ctx.lineTo(563.44994,233.06488);
	ctx.lineTo(563.44826,236.72617);
	ctx.lineTo(561.27886,238.32653);
	ctx.lineTo(560.81995,239.81342);
	ctx.lineTo(560.81995,242.32994);
	ctx.lineTo(559.33139,242.78718);
	ctx.lineTo(557.61755,244.15725);
	ctx.lineTo(557.16198,245.64246);
	ctx.lineTo(557.61755,247.35964);
	ctx.lineTo(556.24331,248.56409);
	ctx.lineTo(553.94955,245.87276);
	ctx.lineTo(552.46601,243.24611);
	ctx.lineTo(544.12548,244.04544);
	ctx.lineTo(533.95428,244.61617);
	ctx.lineTo(508.91758,245.30372);
	ctx.lineTo(495.88274,245.53234);
	ctx.lineTo(486.50922,245.76096);
	ctx.lineTo(485.19344,245.88221);
	ctx.lineTo(483.53879,241.41044);
	ctx.lineTo(483.31017,234.78037);
	ctx.lineTo(481.70981,230.66516);
	ctx.lineTo(481.02395,225.40685);
	ctx.lineTo(478.73772,221.74888);
	ctx.lineTo(477.82324,216.94781);
	ctx.lineTo(475.07976,209.40326);
	ctx.lineTo(473.93665,204.03062);
	ctx.lineTo(472.56491,201.85871);
	ctx.lineTo(470.96455,199.11525);
	ctx.lineTo(472.79353,194.77142);
	ctx.lineTo(474.16527,189.05585);
	ctx.lineTo(471.4218,186.99824);
	ctx.lineTo(470.96455,184.25477);
	ctx.lineTo(471.87905,181.73992);
	ctx.lineTo(473.59372,181.73992);
	ctx.lineTo(485.13916,181.73992);
	ctx.lineTo(534.75027,181.05405);
	ctx.lineTo(554.62705,180.36819);
	ctx.lineTo(556.47778,183.115);
	ctx.lineTo(558.31012,185.73663);
	ctx.lineTo(558.76569,186.541);
	ctx.lineTo(556.93503,189.28949);
	ctx.lineTo(557.3906,193.51148);
	ctx.lineTo(559.90546,197.39807);
	ctx.lineTo(562.8742,199.22202);
	ctx.lineTo(565.27892,199.45232);
	ctx.fill();
	ctx.stroke();
}

function drawMS(ctx, fillStyle)
{
	/* State: MS */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(624.55882,466.96958);
	ctx.lineTo(624.30456,468.22573);
	ctx.lineTo(619.13142,468.22573);
	ctx.lineTo(617.67648,467.41743);
	ctx.lineTo(615.57489,467.09411);
	ctx.lineTo(608.78515,469.03403);
	ctx.lineTo(607.00689,468.22573);
	ctx.lineTo(604.42032,472.4289);
	ctx.lineTo(603.31778,473.20692);
	ctx.lineTo(602.19395,470.71894);
	ctx.lineTo(601.05083,466.83235);
	ctx.lineTo(597.6215,463.63164);
	ctx.lineTo(598.7646,456.08709);
	ctx.lineTo(598.07874,455.1726);
	ctx.lineTo(596.24976,455.40122);
	ctx.lineTo(588.01934,456.08709);
	ctx.lineTo(563.78534,456.77296);
	ctx.lineTo(563.3281,455.1726);
	ctx.lineTo(564.01397,447.1708);
	ctx.lineTo(567.44331,440.99799);
	ctx.lineTo(572.70163,431.85309);
	ctx.lineTo(571.78714,429.79549);
	ctx.lineTo(572.93025,429.79549);
	ctx.lineTo(573.61612,426.59477);
	ctx.lineTo(571.32989,424.76579);
	ctx.lineTo(571.55852,422.93681);
	ctx.lineTo(569.50091,418.36436);
	ctx.lineTo(569.21513,413.0203);
	ctx.lineTo(570.58686,410.36256);
	ctx.lineTo(570.18678,406.01873);
	ctx.lineTo(568.81504,403.04663);
	ctx.lineTo(570.18678,401.6749);
	ctx.lineTo(568.81504,399.6173);
	ctx.lineTo(569.27229,397.78832);
	ctx.lineTo(570.18678,391.6155);
	ctx.lineTo(573.15887,388.87204);
	ctx.lineTo(572.473,386.81443);
	ctx.lineTo(576.13097,381.5561);
	ctx.lineTo(578.87444,380.64162);
	ctx.lineTo(578.87444,378.12677);
	ctx.lineTo(578.18857,376.75503);
	ctx.lineTo(580.93204,371.49672);
	ctx.lineTo(583.67551,370.3536);
	ctx.lineTo(583.78295,366.94152);
	ctx.lineTo(592.4584,366.86408);
	ctx.lineTo(616.54585,364.92416);
	ctx.lineTo(621.12643,364.69553);
	ctx.lineTo(621.13451,371.06725);
	ctx.lineTo(621.29617,387.71831);
	ctx.lineTo(620.48787,418.75716);
	ctx.lineTo(620.32621,432.82165);
	ctx.lineTo(623.07445,451.57429);
	ctx.fill();
	ctx.stroke();
}

function drawIN(ctx, fillStyle)
{
	/* State: IN */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(618.42049,300.8552);
	ctx.lineTo(618.48577,297.99662);
	ctx.lineTo(618.97076,293.47011);
	ctx.lineTo(621.234,290.56023);
	ctx.lineTo(623.01228,286.68036);
	ctx.lineTo(625.59884,282.47719);
	ctx.lineTo(625.11386,276.6574);
	ctx.lineTo(623.3356,273.90917);
	ctx.lineTo(623.01228,270.67596);
	ctx.lineTo(623.82058,265.17949);
	ctx.lineTo(623.3356,258.22808);
	ctx.lineTo(622.0423,242.22367);
	ctx.lineTo(620.74902,226.86591);
	ctx.lineTo(619.77855,215.14589);
	ctx.lineTo(622.84961,216.0354);
	ctx.lineTo(624.30456,217.00536);
	ctx.lineTo(625.43618,216.68204);
	ctx.lineTo(627.53777,214.74212);
	ctx.lineTo(630.36734,213.12513);
	ctx.lineTo(635.46014,212.96309);
	ctx.lineTo(657.44601,210.69983);
	ctx.lineTo(663.02174,210.16667);
	ctx.lineTo(664.52488,226.12288);
	ctx.lineTo(668.77623,262.96443);
	ctx.lineTo(669.37469,268.73603);
	ctx.lineTo(669.00319,270.99928);
	ctx.lineTo(670.23117,272.79465);
	ctx.lineTo(670.32756,274.1672);
	ctx.lineTo(667.80627,275.76671);
	ctx.lineTo(664.26684,277.31802);
	ctx.lineTo(661.06471,277.8683);
	ctx.lineTo(660.46625,282.73523);
	ctx.lineTo(655.89156,286.0477);
	ctx.lineTo(653.09514,290.05814);
	ctx.lineTo(653.41846,292.43487);
	ctx.lineTo(652.83712,293.96907);
	ctx.lineTo(649.51065,293.96907);
	ctx.lineTo(647.92512,292.35247);
	ctx.lineTo(645.43181,293.61467);
	ctx.lineTo(642.74885,295.11781);
	ctx.lineTo(642.91052,298.17226);
	ctx.lineTo(641.71673,298.43029);
	ctx.lineTo(641.24885,297.41215);
	ctx.lineTo(639.08197,295.90901);
	ctx.lineTo(635.83165,297.25049);
	ctx.lineTo(634.28034,300.25674);
	ctx.lineTo(632.8425,299.44844);
	ctx.lineTo(631.38755,297.84893);
	ctx.lineTo(626.92321,298.33392);
	ctx.lineTo(621.33038,299.30388);
	ctx.fill();
	ctx.stroke();
}

function drawIL(ctx, fillStyle)
{
	/* State: IL */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(617.80493,301.60133);
	ctx.lineTo(617.80493,297.99662);
	ctx.lineTo(618.06296,293.12969);
	ctx.lineTo(620.43968,289.99286);
	ctx.lineTo(622.21795,286.22646);
	ctx.lineTo(624.80452,282.36371);
	ctx.lineTo(624.43302,277.11131);
	ctx.lineTo(622.42781,273.56874);
	ctx.lineTo(622.33143,270.22206);
	ctx.lineTo(623.02626,264.95255);
	ctx.lineTo(622.20085,257.77418);
	ctx.lineTo(621.13451,241.99673);
	ctx.lineTo(619.84123,226.97939);
	ctx.lineTo(618.91895,215.34019);
	ctx.lineTo(618.64644,214.4188);
	ctx.lineTo(617.83814,211.83223);
	ctx.lineTo(616.54486,208.11404);
	ctx.lineTo(614.92825,206.33577);
	ctx.lineTo(613.47331,203.74921);
	ctx.lineTo(613.23974,198.26025);
	ctx.lineTo(603.33707,199.57249);
	ctx.lineTo(576.13098,201.28716);
	ctx.lineTo(567.44331,200.8585);
	ctx.lineTo(567.67193,203.23045);
	ctx.lineTo(569.95816,203.91632);
	ctx.lineTo(570.87264,205.05943);
	ctx.lineTo(571.32989,206.88841);
	ctx.lineTo(575.21647,210.31775);
	ctx.lineTo(575.90235,212.60398);
	ctx.lineTo(575.21647,216.03332);
	ctx.lineTo(573.38749,219.69128);
	ctx.lineTo(572.70163,222.20612);
	ctx.lineTo(570.4154,224.03511);
	ctx.lineTo(568.58642,224.72098);
	ctx.lineTo(563.3281,226.09271);
	ctx.lineTo(562.64223,227.92169);
	ctx.lineTo(561.95636,229.9793);
	ctx.lineTo(562.64223,231.35104);
	ctx.lineTo(564.47121,232.9514);
	ctx.lineTo(564.24259,237.0666);
	ctx.lineTo(562.4136,238.66696);
	ctx.lineTo(561.72774,240.26732);
	ctx.lineTo(561.72774,243.01079);
	ctx.lineTo(559.89876,243.46803);
	ctx.lineTo(558.2984,244.61115);
	ctx.lineTo(558.06978,245.98289);
	ctx.lineTo(558.2984,248.04049);
	ctx.lineTo(556.58373,249.35506);
	ctx.lineTo(555.55493,252.1557);
	ctx.lineTo(556.01217,255.81365);
	ctx.lineTo(558.2984,263.12958);
	ctx.lineTo(565.61433,270.67413);
	ctx.lineTo(571.10126,274.33209);
	ctx.lineTo(570.87264,278.67592);
	ctx.lineTo(571.78714,280.04766);
	ctx.lineTo(578.18857,280.5049);
	ctx.lineTo(580.93204,281.87664);
	ctx.lineTo(580.24618,285.5346);
	ctx.lineTo(577.95995,291.47879);
	ctx.lineTo(577.27408,294.67951);
	ctx.lineTo(579.5603,298.56609);
	ctx.lineTo(585.96174,303.82441);
	ctx.lineTo(590.5342,304.51028);
	ctx.lineTo(592.59179,309.53998);
	ctx.lineTo(594.6494,312.74069);
	ctx.lineTo(593.73491,315.71278);
	ctx.lineTo(595.33527,319.82799);
	ctx.lineTo(597.16425,321.8856);
	ctx.lineTo(599.10861,321.0933);
	ctx.lineTo(599.7953,318.93012);
	ctx.lineTo(601.8316,317.49228);
	ctx.lineTo(605.06793,316.39174);
	ctx.lineTo(608.15659,317.57154);
	ctx.lineTo(611.03228,318.63788);
	ctx.lineTo(611.82348,318.42804);
	ctx.lineTo(611.75819,317.18606);
	ctx.lineTo(610.69186,314.42072);
	ctx.lineTo(611.12866,312.044);
	ctx.lineTo(613.409,310.47557);
	ctx.lineTo(615.76863,309.48851);
	ctx.lineTo(616.93134,309.06882);
	ctx.lineTo(616.34998,307.74444);
	ctx.lineTo(615.58986,305.57757);
	ctx.lineTo(616.83496,304.31536);
	ctx.fill();
	ctx.stroke();
}

function drawMN(ctx, fillStyle)
{
	/* State: MN */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(471.87905,128.47084);
	ctx.lineTo(471.4218,120.0118);
	ctx.lineTo(469.59282,112.69588);
	ctx.lineTo(467.76384,99.207152);
	ctx.lineTo(467.30659,89.376374);
	ctx.lineTo(465.47761,85.947031);
	ctx.lineTo(463.87725,80.917336);
	ctx.lineTo(463.87725,70.629316);
	ctx.lineTo(464.56311,66.742729);
	ctx.lineTo(462.74218,61.291062);
	ctx.lineTo(492.8746,61.326333);
	ctx.lineTo(493.19792,53.081649);
	ctx.lineTo(493.84456,52.919988);
	ctx.lineTo(496.10781,53.40497);
	ctx.lineTo(498.04773,54.213272);
	ctx.lineTo(498.85603,59.709728);
	ctx.lineTo(500.31098,65.852826);
	ctx.lineTo(501.92758,67.469431);
	ctx.lineTo(506.7774,67.469431);
	ctx.lineTo(507.10072,68.924375);
	ctx.lineTo(513.40548,69.247696);
	ctx.lineTo(513.40548,71.349282);
	ctx.lineTo(518.25529,71.349282);
	ctx.lineTo(518.57861,70.055998);
	ctx.lineTo(519.71023,68.924375);
	ctx.lineTo(521.97348,68.277733);
	ctx.lineTo(523.26676,69.247696);
	ctx.lineTo(526.17665,69.247696);
	ctx.lineTo(530.0565,71.834263);
	ctx.lineTo(535.3913,74.25917);
	ctx.lineTo(537.81621,74.744152);
	ctx.lineTo(538.30119,73.774189);
	ctx.lineTo(539.75613,73.289207);
	ctx.lineTo(540.24111,76.199096);
	ctx.lineTo(542.82768,77.49238);
	ctx.lineTo(543.31266,77.007398);
	ctx.lineTo(544.60595,77.169059);
	ctx.lineTo(544.60595,79.270645);
	ctx.lineTo(547.19251,80.240608);
	ctx.lineTo(550.26406,80.240608);
	ctx.lineTo(551.88067,79.432305);
	ctx.lineTo(555.11388,76.199096);
	ctx.lineTo(557.70044,75.714115);
	ctx.lineTo(558.50875,77.49238);
	ctx.lineTo(558.99373,78.785663);
	ctx.lineTo(559.96369,78.785663);
	ctx.lineTo(560.93365,77.977361);
	ctx.lineTo(569.82498,77.65404);
	ctx.lineTo(571.60324,80.725589);
	ctx.lineTo(572.24989,80.725589);
	ctx.lineTo(572.9635,79.64131);
	ctx.lineTo(577.40341,79.270645);
	ctx.lineTo(576.79131,81.550104);
	ctx.lineTo(572.85259,83.387229);
	ctx.lineTo(563.60681,87.448357);
	ctx.lineTo(558.83207,89.455254);
	ctx.lineTo(555.76052,92.041822);
	ctx.lineTo(553.33561,95.598352);
	ctx.lineTo(551.07237,99.478203);
	ctx.lineTo(549.2941,100.28651);
	ctx.lineTo(544.76761,105.29798);
	ctx.lineTo(543.47432,105.45964);
	ctx.lineTo(539.63268,108.39354);
	ctx.lineTo(536.81624,111.55445);
	ctx.lineTo(536.58762,114.52487);
	ctx.lineTo(536.81457,122.30306);
	ctx.lineTo(535.21755,123.90342);
	ctx.lineTo(529.95924,128.01694);
	ctx.lineTo(528.12691,133.73419);
	ctx.lineTo(530.6451,137.38211);
	ctx.lineTo(531.10402,139.90198);
	ctx.lineTo(529.95589,142.87575);
	ctx.lineTo(529.72893,146.53538);
	ctx.lineTo(530.18618,153.61933);
	ctx.lineTo(533.61218,157.72618);
	ctx.lineTo(536.58762,157.72618);
	ctx.lineTo(539.09745,160.01909);
	ctx.lineTo(542.29984,161.38414);
	ctx.lineTo(545.95948,166.41886);
	ctx.lineTo(553.04677,171.44186);
	ctx.lineTo(554.87742,173.50448);
	ctx.lineTo(555.11107,179.00649);
	ctx.lineTo(534.52332,179.69236);
	ctx.lineTo(474.27457,180.15128);
	ctx.lineTo(473.93665,144.47443);
	ctx.lineTo(473.47941,141.50234);
	ctx.lineTo(469.3642,138.073);
	ctx.lineTo(468.22108,136.24402);
	ctx.lineTo(468.22108,134.64365);
	ctx.lineTo(470.27868,133.0433);
	ctx.lineTo(471.65042,131.67156);
	ctx.fill();
	ctx.stroke();
}

function drawWI(ctx, fillStyle)
{
	/* State: WI */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(612.94089,197.18116);
	ctx.lineTo(613.31165,194.21124);
	ctx.lineTo(611.69504,189.68474);
	ctx.lineTo(611.0484,183.54165);
	ctx.lineTo(609.91678,181.11674);
	ctx.lineTo(610.88674,178.04519);
	ctx.lineTo(611.69504,175.1353);
	ctx.lineTo(613.14999,172.54874);
	ctx.lineTo(612.50334,169.15387);
	ctx.lineTo(611.8567,165.59734);
	ctx.lineTo(612.34168,163.81907);
	ctx.lineTo(614.28161,161.39416);
	ctx.lineTo(614.44327,158.64593);
	ctx.lineTo(613.63497,157.35265);
	ctx.lineTo(614.28161,154.76608);
	ctx.lineTo(614.76659,151.53287);
	ctx.lineTo(617.51482,145.87476);
	ctx.lineTo(620.42471,139.08502);
	ctx.lineTo(620.58637,136.82177);
	ctx.lineTo(620.26305,135.85181);
	ctx.lineTo(619.45474,136.33679);
	ctx.lineTo(615.25157,142.64155);
	ctx.lineTo(612.50334,146.68306);
	ctx.lineTo(610.56342,148.46133);
	ctx.lineTo(609.75512,150.72457);
	ctx.lineTo(608.30017,151.53287);
	ctx.lineTo(607.16855,153.4728);
	ctx.lineTo(605.7136,153.14948);
	ctx.lineTo(605.55194,151.37121);
	ctx.lineTo(606.84523,148.94631);
	ctx.lineTo(608.94681,144.25815);
	ctx.lineTo(610.72508,142.64155);
	ctx.lineTo(611.8264,140.34999);
	ctx.lineTo(610.19574,139.44474);
	ctx.lineTo(608.824,138.073);
	ctx.lineTo(607.22364,127.78498);
	ctx.lineTo(603.56569,126.64187);
	ctx.lineTo(602.19395,124.35564);
	ctx.lineTo(589.6197,121.61217);
	ctx.lineTo(587.10485,120.46906);
	ctx.lineTo(578.87444,118.18283);
	ctx.lineTo(570.64402,117.03971);
	ctx.lineTo(566.47456,111.63491);
	ctx.lineTo(565.94513,112.89602);
	ctx.lineTo(564.81351,112.73436);
	ctx.lineTo(564.16686,111.60274);
	ctx.lineTo(561.41864,110.79444);
	ctx.lineTo(560.28701,110.9561);
	ctx.lineTo(558.50875,111.92606);
	ctx.lineTo(557.53878,111.27942);
	ctx.lineTo(558.18543,109.33949);
	ctx.lineTo(560.12535,106.26794);
	ctx.lineTo(561.25697,105.13632);
	ctx.lineTo(559.31705,103.68138);
	ctx.lineTo(557.21546,104.48968);
	ctx.lineTo(554.30557,106.4296);
	ctx.lineTo(546.86919,109.66281);
	ctx.lineTo(543.9593,110.30945);
	ctx.lineTo(541.04942,109.82447);
	ctx.lineTo(540.06769,108.94622);
	ctx.lineTo(537.95099,111.7814);
	ctx.lineTo(537.72237,114.52487);
	ctx.lineTo(537.72237,122.9839);
	ctx.lineTo(536.57925,124.58427);
	ctx.lineTo(531.32093,128.47084);
	ctx.lineTo(529.03471,134.41503);
	ctx.lineTo(529.49195,134.64365);
	ctx.lineTo(532.0068,136.70126);
	ctx.lineTo(532.69266,139.90198);
	ctx.lineTo(530.86368,143.10269);
	ctx.lineTo(530.86368,146.98928);
	ctx.lineTo(531.32093,153.61933);
	ctx.lineTo(534.29302,156.59143);
	ctx.lineTo(537.72237,156.59143);
	ctx.lineTo(539.55135,159.79215);
	ctx.lineTo(542.98068,160.24939);
	ctx.lineTo(546.86727,165.96496);
	ctx.lineTo(553.95457,170.08017);
	ctx.lineTo(556.01217,172.82364);
	ctx.lineTo(556.92667,180.25388);
	ctx.lineTo(557.61253,183.5689);
	ctx.lineTo(559.89876,185.16926);
	ctx.lineTo(560.12738,186.541);
	ctx.lineTo(558.06978,189.97033);
	ctx.lineTo(558.2984,193.17106);
	ctx.lineTo(560.81325,197.05764);
	ctx.lineTo(563.3281,198.20075);
	ctx.lineTo(566.30019,198.65799);
	ctx.lineTo(567.64253,200.03811);
	ctx.lineTo(576.81603,200.03809);
	ctx.lineTo(602.88316,198.55122);
	ctx.fill();
	ctx.stroke();
}

function drawMO(ctx, fillStyle)
{
	/* State: MO */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(555.78857,249.52738);
	ctx.lineTo(553.2687,246.44013);
	ctx.lineTo(552.12558,244.1539);
	ctx.lineTo(544.35242,244.83977);
	ctx.lineTo(534.52164,245.29701);
	ctx.lineTo(509.14453,246.21151);
	ctx.lineTo(495.6558,246.44013);
	ctx.lineTo(487.76835,246.55444);
	ctx.lineTo(485.48209,246.66875);
	ctx.lineTo(486.73952,249.1836);
	ctx.lineTo(486.5109,251.46982);
	ctx.lineTo(489.02574,255.35641);
	ctx.lineTo(492.11214,259.47162);
	ctx.lineTo(495.19855,262.21509);
	ctx.lineTo(497.48478,262.44371);
	ctx.lineTo(498.85651,263.35821);
	ctx.lineTo(498.85651,266.3303);
	ctx.lineTo(497.02754,267.93066);
	ctx.lineTo(496.57028,270.21688);
	ctx.lineTo(498.62789,273.64623);
	ctx.lineTo(501.14275,276.61832);
	ctx.lineTo(503.65759,278.4473);
	ctx.lineTo(505.02932,290.10705);
	ctx.lineTo(504.34346,325.42926);
	ctx.lineTo(504.57208,330.11601);
	ctx.lineTo(505.02932,335.49952);
	ctx.lineTo(528.46231,335.3827);
	ctx.lineTo(551.66834,334.69683);
	ctx.lineTo(572.473,333.89582);
	ctx.lineTo(584.12774,333.66552);
	ctx.lineTo(586.29714,337.09152);
	ctx.lineTo(585.61295,340.39902);
	ctx.lineTo(582.5257,342.80206);
	ctx.lineTo(581.95331,344.6394);
	ctx.lineTo(587.3318,345.09666);
	ctx.lineTo(591.22676,344.41078);
	ctx.lineTo(592.94394,338.91715);
	ctx.lineTo(593.59536,333.06036);
	ctx.lineTo(595.91436,331.03553);
	ctx.lineTo(597.62651,329.54864);
	ctx.lineTo(599.68412,328.519);
	ctx.lineTo(599.79926,325.65871);
	ctx.lineTo(600.37334,323.9432);
	ctx.lineTo(599.34202,322.19493);
	ctx.lineTo(596.59688,322.3395);
	ctx.lineTo(594.42748,319.71451);
	ctx.lineTo(593.05406,315.48584);
	ctx.lineTo(593.85507,312.96764);
	ctx.lineTo(591.91094,309.53998);
	ctx.lineTo(590.0803,304.96418);
	ctx.lineTo(585.28089,304.16484);
	ctx.lineTo(578.31209,298.56609);
	ctx.lineTo(576.59323,294.45256);
	ctx.lineTo(577.39258,291.25184);
	ctx.lineTo(579.45185,285.19417);
	ctx.lineTo(579.91077,282.33054);
	ctx.lineTo(577.96163,281.29923);
	ctx.lineTo(571.10629,280.50156);
	ctx.lineTo(570.07832,278.7894);
	ctx.lineTo(569.96652,274.55904);
	ctx.lineTo(564.47958,271.12803);
	ctx.lineTo(557.50407,263.35653);
	ctx.lineTo(555.21785,256.0406);
	ctx.lineTo(554.98756,251.81528);
	ctx.fill();
	ctx.stroke();
}

function drawAR(ctx, fillStyle)
{
	/* State: AR */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(590.95215,344.95331);
	ctx.lineTo(587.10485,345.89098);
	ctx.lineTo(580.93204,345.43373);
	ctx.lineTo(581.61791,342.46164);
	ctx.lineTo(584.81863,339.71817);
	ctx.lineTo(585.27587,337.43194);
	ctx.lineTo(583.44689,334.45984);
	ctx.lineTo(572.473,334.91709);
	ctx.lineTo(551.66834,335.83158);
	ctx.lineTo(528.34883,336.51745);
	ctx.lineTo(505.02932,336.97469);
	ctx.lineTo(506.62968,343.83338);
	ctx.lineTo(506.62967,352.0638);
	ctx.lineTo(508.00142,363.03779);
	ctx.lineTo(508.23004,400.87472);
	ctx.lineTo(510.51627,402.81801);
	ctx.lineTo(513.48836,401.44628);
	ctx.lineTo(516.23184,402.58939);
	ctx.lineTo(516.66218,412.91269);
	ctx.lineTo(539.548,412.77064);
	ctx.lineTo(558.41187,411.96962);
	ctx.lineTo(568.53344,411.77209);
	ctx.lineTo(569.67907,409.68172);
	ctx.lineTo(569.39245,406.13221);
	ctx.lineTo(567.56682,403.16011);
	ctx.lineTo(569.16551,401.6749);
	ctx.lineTo(567.56682,399.1634);
	ctx.lineTo(568.25102,396.65357);
	ctx.lineTo(569.61941,391.04814);
	ctx.lineTo(572.1376,388.98551);
	ctx.lineTo(571.45173,386.70095);
	ctx.lineTo(575.1097,381.32916);
	ctx.lineTo(577.85317,379.96077);
	ctx.lineTo(577.73969,378.46719);
	ctx.lineTo(577.39425,376.64155);
	ctx.lineTo(580.2512,371.04282);
	ctx.lineTo(582.65424,369.78623);
	ctx.lineTo(583.03837,366.3586);
	ctx.lineTo(584.80904,365.1169);
	ctx.lineTo(585.66552,360.88263);
	ctx.lineTo(584.32406,356.87219);
	ctx.lineTo(588.36558,354.49548);
	ctx.lineTo(588.91584,352.47628);
	ctx.lineTo(590.15112,348.2087);
	ctx.fill();
	ctx.stroke();
}

function drawOK(ctx, fillStyle)
{
	/* State: OK */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(375.34313,322.57146);
	ctx.lineTo(364.65498,322.11427);
	ctx.lineTo(358.22497,321.62845);
	ctx.lineTo(358.48217,321.82848);
	ctx.lineTo(357.77873,332.25058);
	ctx.lineTo(379.74411,333.65746);
	ctx.lineTo(411.79966,334.96106);
	ctx.lineTo(409.46506,359.37971);
	ctx.lineTo(409.00781,377.21228);
	ctx.lineTo(409.23644,378.81264);
	ctx.lineTo(413.58027,382.4706);
	ctx.lineTo(415.63787,383.61371);
	ctx.lineTo(416.32374,383.38509);
	ctx.lineTo(417.00961,381.32748);
	ctx.lineTo(418.38135,383.15647);
	ctx.lineTo(420.43895,383.15647);
	ctx.lineTo(420.43895,381.78473);
	ctx.lineTo(423.18242,383.15647);
	ctx.lineTo(422.72518,387.04305);
	ctx.lineTo(426.84039,387.27167);
	ctx.lineTo(429.35523,388.41479);
	ctx.lineTo(433.47044,389.10066);
	ctx.lineTo(435.98529,390.92964);
	ctx.lineTo(438.27152,388.87204);
	ctx.lineTo(441.70086,389.5579);
	ctx.lineTo(444.21571,392.98724);
	ctx.lineTo(445.13019,392.98724);
	ctx.lineTo(445.13019,395.27347);
	ctx.lineTo(447.41642,395.95933);
	ctx.lineTo(449.70264,393.67311);
	ctx.lineTo(451.53163,394.35897);
	ctx.lineTo(454.04647,394.35897);
	ctx.lineTo(454.96097,396.87383);
	ctx.lineTo(459.76204,398.7028);
	ctx.lineTo(461.13378,398.01694);
	ctx.lineTo(462.96276,393.90173);
	ctx.lineTo(464.10587,393.90173);
	ctx.lineTo(465.24899,395.95933);
	ctx.lineTo(469.3642,396.6452);
	ctx.lineTo(473.02215,398.01694);
	ctx.lineTo(475.99425,398.93143);
	ctx.lineTo(477.82324,398.01694);
	ctx.lineTo(478.5091,395.50209);
	ctx.lineTo(482.85293,395.50209);
	ctx.lineTo(484.91053,396.41658);
	ctx.lineTo(487.654,394.35897);
	ctx.lineTo(488.79712,394.35897);
	ctx.lineTo(489.48299,395.95933);
	ctx.lineTo(493.59819,395.95933);
	ctx.lineTo(495.19855,393.90173);
	ctx.lineTo(497.02754,394.35897);
	ctx.lineTo(499.08514,396.87383);
	ctx.lineTo(502.28585,398.7028);
	ctx.lineTo(505.48658,399.6173);
	ctx.lineTo(507.42766,400.73623);
	ctx.lineTo(507.03856,363.51922);
	ctx.lineTo(505.66681,352.54524);
	ctx.lineTo(505.50635,343.6729);
	ctx.lineTo(504.06646,337.13517);
	ctx.lineTo(503.28826,329.95553);
	ctx.lineTo(503.22012,326.13931);
	ctx.lineTo(491.08328,326.45805);
	ctx.lineTo(444.67324,326.00081);
	ctx.lineTo(399.63433,323.94319);
	ctx.fill();
	ctx.stroke();
}

function drawKS(ctx, fillStyle)
{
	/* State: KS */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(503.38059,325.13028);
	ctx.lineTo(490.76233,325.33471);
	ctx.lineTo(444.67324,324.87748);
	ctx.lineTo(400.11576,322.81985);
	ctx.lineTo(375.48602,321.56244);
	ctx.lineTo(379.62981,256.84247);
	ctx.lineTo(401.46327,257.64264);
	ctx.lineTo(441.92918,259.01437);
	ctx.lineTo(486.05364,259.47162);
	ctx.lineTo(491.14927,259.47162);
	ctx.lineTo(494.39617,262.69652);
	ctx.lineTo(497.16383,262.92514);
	ctx.lineTo(498.05413,264.00011);
	ctx.lineTo(498.05413,266.00934);
	ctx.lineTo(496.22515,267.60971);
	ctx.lineTo(495.7679,270.21688);
	ctx.lineTo(497.98598,273.80671);
	ctx.lineTo(500.50084,276.93927);
	ctx.lineTo(503.01569,278.92873);
	ctx.lineTo(504.06646,290.10705);
	ctx.fill();
	ctx.stroke();
}

function drawLA(ctx, fillStyle)
{
	/* State: LA */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(602.20213,472.99473);
	ctx.lineTo(601.17268,470.37851);
	ctx.lineTo(600.02956,467.28625);
	ctx.lineTo(596.7137,463.74511);
	ctx.lineTo(597.62986,456.99488);
	ctx.lineTo(597.51137,455.85345);
	ctx.lineTo(596.24976,456.19555);
	ctx.lineTo(588.01934,457.10836);
	ctx.lineTo(562.99102,457.56728);
	ctx.lineTo(562.30683,455.1726);
	ctx.lineTo(563.21964,446.7169);
	ctx.lineTo(566.53552,440.77105);
	ctx.lineTo(571.56688,432.08003);
	ctx.lineTo(570.99281,429.68201);
	ctx.lineTo(572.2494,429.00116);
	ctx.lineTo(572.70833,427.04867);
	ctx.lineTo(570.42209,424.99274);
	ctx.lineTo(570.3103,423.05029);
	ctx.lineTo(568.47964,418.70478);
	ctx.lineTo(568.02323,412.76393);
	ctx.lineTo(558.2984,412.87741);
	ctx.lineTo(539.0941,413.79191);
	ctx.lineTo(516.88913,413.82048);
	ctx.lineTo(516.9177,423.39405);
	ctx.lineTo(517.60357,432.76758);
	ctx.lineTo(518.28944,436.65416);
	ctx.lineTo(520.80429,440.76937);
	ctx.lineTo(521.71878,445.79908);
	ctx.lineTo(526.06261,451.28601);
	ctx.lineTo(526.29123,454.48673);
	ctx.lineTo(526.9771,455.1726);
	ctx.lineTo(526.29123,463.63164);
	ctx.lineTo(523.31914,468.66133);
	ctx.lineTo(524.9195,470.71894);
	ctx.lineTo(524.23362,473.23378);
	ctx.lineTo(523.54776,480.54971);
	ctx.lineTo(522.17602,483.75042);
	ctx.lineTo(522.29848,487.36687);
	ctx.lineTo(526.98496,485.84672);
	ctx.lineTo(535.06798,485.5234);
	ctx.lineTo(545.41425,489.07993);
	ctx.lineTo(551.88067,490.21156);
	ctx.lineTo(555.59886,488.75661);
	ctx.lineTo(558.83207,489.88824);
	ctx.lineTo(562.06528,490.8582);
	ctx.lineTo(562.87358,488.75661);
	ctx.lineTo(559.64037,487.62499);
	ctx.lineTo(557.0538,488.10997);
	ctx.lineTo(554.30557,486.49337);
	ctx.bezierCurveTo(554.30557,486.49337,554.46724,485.20008,555.11388,485.03842)
	ctx.bezierCurveTo(555.76052,484.87676,558.18543,484.06846,558.18543,484.06846)
	ctx.lineTo(559.96369,485.5234);
	ctx.lineTo(561.74196,484.55344);
	ctx.lineTo(564.97517,485.20008);
	ctx.lineTo(566.43011,487.62499);
	ctx.lineTo(566.75343,489.88824);
	ctx.lineTo(571.27992,490.21156);
	ctx.lineTo(573.05819,491.98982);
	ctx.lineTo(572.24989,493.60643);
	ctx.lineTo(570.9566,494.41473);
	ctx.lineTo(572.57321,496.03133);
	ctx.lineTo(580.97955,499.58786);
	ctx.lineTo(584.53608,498.29458);
	ctx.lineTo(585.50605,495.86967);
	ctx.lineTo(588.09261,495.22303);
	ctx.lineTo(589.87088,493.76809);
	ctx.lineTo(591.16416,494.73805);
	ctx.lineTo(591.97246,497.64794);
	ctx.lineTo(589.70922,498.45624);
	ctx.lineTo(590.35586,499.10288);
	ctx.lineTo(593.75073,497.8096);
	ctx.lineTo(596.01398,494.41473);
	ctx.lineTo(596.82228,493.92975);
	ctx.lineTo(594.72069,493.60643);
	ctx.lineTo(595.52899,491.98982);
	ctx.lineTo(595.36733,490.53488);
	ctx.lineTo(597.46892,490.0499);
	ctx.lineTo(598.60054,488.75661);
	ctx.lineTo(599.24718,489.56491);
	ctx.bezierCurveTo(599.24718,489.56491,599.08552,492.63646,599.89383,492.63646)
	ctx.bezierCurveTo(600.70213,492.63646,604.097,493.28311,604.097,493.28311)
	ctx.lineTo(608.13851,495.22303);
	ctx.lineTo(609.10847,496.67798);
	ctx.lineTo(612.01836,496.67798);
	ctx.lineTo(613.14999,497.64794);
	ctx.lineTo(615.41323,494.57639);
	ctx.lineTo(615.41323,493.12144);
	ctx.lineTo(614.11995,493.12144);
	ctx.lineTo(610.72508,490.37322);
	ctx.lineTo(604.9053,489.56491);
	ctx.lineTo(601.67209,487.30167);
	ctx.lineTo(602.80372,484.55344);
	ctx.lineTo(605.06696,484.87676);
	ctx.lineTo(605.22862,484.23012);
	ctx.lineTo(603.45036,483.26016);
	ctx.lineTo(603.45036,482.77517);
	ctx.lineTo(606.68357,482.77517);
	ctx.lineTo(608.46183,479.70363);
	ctx.lineTo(607.16855,477.7637);
	ctx.lineTo(606.84523,475.01547);
	ctx.lineTo(605.39028,475.17713);
	ctx.lineTo(603.45036,477.27872);
	ctx.lineTo(602.80372,479.86529);
	ctx.lineTo(599.73217,479.21864);
	ctx.lineTo(598.7622,477.44038);
	ctx.lineTo(600.54047,475.50045);
	ctx.lineTo(602.56122,473.7222);
	ctx.fill();
	ctx.stroke();
}

function drawVA(ctx, fillStyle)
{
	/* State: VA */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(828.90662,269.2457);
	ctx.lineTo(828.76271,267.29867);
	ctx.lineTo(835.21614,264.74879);
	ctx.lineTo(834.44573,267.96663);
	ctx.lineTo(831.52578,271.74574);
	ctx.lineTo(831.10769,276.33156);
	ctx.lineTo(831.56944,279.722);
	ctx.lineTo(829.74147,284.70016);
	ctx.lineTo(827.5772,286.6163);
	ctx.lineTo(826.10686,281.97549);
	ctx.lineTo(826.55275,276.52638);
	ctx.lineTo(828.13975,272.34331);

	ctx.moveTo(831.18615,297.54706);
	ctx.lineTo(773.01197,310.12249);
	ctx.lineTo(735.585,315.40156);
	ctx.lineTo(728.90667,315.02638);
	ctx.lineTo(726.32142,316.95276);
	ctx.lineTo(718.98229,317.17345);
	ctx.lineTo(710.60018,318.15112);
	ctx.lineTo(701.67396,319.10283);
	ctx.lineTo(710.15465,314.15454);
	ctx.lineTo(710.14153,312.07961);
	ctx.lineTo(711.66158,309.93348);
	ctx.lineTo(722.21536,298.43205);
	ctx.lineTo(726.16208,302.90951);
	ctx.lineTo(729.94509,303.87349);
	ctx.lineTo(732.48855,302.73317);
	ctx.lineTo(734.72577,301.42201);
	ctx.lineTo(737.26238,302.76553);
	ctx.lineTo(741.17655,301.33777);
	ctx.lineTo(743.05328,296.78143);
	ctx.lineTo(745.6542,297.32145);
	ctx.lineTo(748.50944,295.1902);
	ctx.lineTo(750.30871,295.6838);
	ctx.lineTo(753.13592,292.00723);
	ctx.lineTo(753.48417,289.92412);
	ctx.lineTo(752.52051,288.64855);
	ctx.lineTo(753.52328,286.78192);
	ctx.lineTo(758.79755,274.50477);
	ctx.lineTo(759.41432,268.76969);
	ctx.lineTo(760.64321,268.24615);
	ctx.lineTo(762.82174,270.68902);
	ctx.lineTo(766.7576,270.38785);
	ctx.lineTo(768.68681,262.81422);
	ctx.lineTo(771.4808,262.25336);
	ctx.lineTo(772.53055,259.51229);
	ctx.lineTo(775.11037,257.16541);
	ctx.lineTo(776.37834,254.8232);
	ctx.lineTo(777.8822,251.47022);
	ctx.lineTo(777.96713,246.40267);
	ctx.lineTo(787.78864,250.22549);
	ctx.bezierCurveTo(788.46949,250.56591,788.44474,245.44151,788.44474,245.44151)
	ctx.lineTo(792.49505,246.81886);
	ctx.lineTo(792.03305,249.44766);
	ctx.lineTo(800.18916,252.38732);
	ctx.lineTo(801.48203,254.18171);
	ctx.lineTo(800.61409,257.86385);
	ctx.lineTo(799.35101,259.18967);
	ctx.lineTo(798.84509,260.93571);
	ctx.lineTo(799.339,263.33843);
	ctx.lineTo(801.29798,264.61681);
	ctx.lineTo(805.21607,266.06202);
	ctx.lineTo(808.16474,267.02998);
	ctx.lineTo(813.02121,267.97209);
	ctx.lineTo(815.17352,270.06055);
	ctx.lineTo(818.36396,270.46308);
	ctx.lineTo(819.23203,271.6631);
	ctx.lineTo(818.79254,276.35318);
	ctx.lineTo(820.16727,277.45573);
	ctx.lineTo(819.68832,279.38612);
	ctx.lineTo(820.91773,280.17589);
	ctx.lineTo(820.69593,281.56049);
	ctx.lineTo(818.00194,281.46555);
	ctx.lineTo(818.0909,283.08107);
	ctx.lineTo(820.37189,284.62394);
	ctx.lineTo(820.49343,286.03584);
	ctx.lineTo(822.26654,287.82122);
	ctx.lineTo(822.75833,290.34535);
	ctx.lineTo(820.20529,291.72666);
	ctx.lineTo(821.77751,293.22096);
	ctx.lineTo(827.57853,291.53513);
	ctx.fill();
	ctx.stroke();
}

function drawDC(ctx, fillStyle)
{
	/* State: DC */
	ctx.beginPath();
	ctx.fillStyle = fillStyle;

	ctx.moveTo(801.75695,253.84384);
	ctx.lineTo(800.67992,252.20717);
	ctx.lineTo(799.66604,251.36463);
	ctx.lineTo(800.7653,249.74841);
	ctx.lineTo(802.99814,251.25941);
	ctx.fill();
	ctx.stroke();
}
