var ParallelLine;var OffsetLine=ParallelLine=(function(){function A(C,D,B){this.points=C;
this.gapPx=D;this.options=B;this.line=null;this.lstnZoom=null}A.prototype=new GOverlay();
A.prototype.initialize=function(C){this.map=C;this.prj=C.getCurrentMapType().getProjection();
var B=GEvent.callback(this,this.onZoom);this.lstnZoom=GEvent.addListener(C,"zoomend",B);
this.idle=true;this.recalc()};A.prototype.onZoom=function(){if(this.idle){this.recalc()
}else{this.onZoom.delay(50,this)}};A.prototype.show=function(){if(this.line){return this.line.show()
}};A.prototype.hide=function(){if(this.line){return this.line.hide()}};A.prototype.isHidden=function(){if(this.line){return this.line.isHidden()
}};A.prototype.remove=function(){if(this.line){this.map.removeOverlay(this.line)}if(this.lstnZoom!=null){GEvent.removeListener(this.lstnZoom)
}};A.prototype.copy=function(B){return new A(this.points,this.gapPx,this.options)
};A.prototype.redraw=function(B){return };A.prototype.setStrokeStyle=function(B){$extend(this.options,B);
if(this.line){this.line.setStrokeStyle(this.options)}};A.prototype.recalc=function(){this.idle=false;
var B=this.map.getZoom();var Y=new Array();var Q=this.gapPx+(this.options.weight/2);
var S,N;var R=1;for(var U=1;U<this.points.length;U++){var E;var H;var O;var D=this.prj.fromLatLngToPixel(this.points[U-R],B);
var C=this.prj.fromLatLngToPixel(this.points[U],B);var I=Math.atan2(D.x-C.x,D.y-C.y)+(Math.PI/2);
var T=Math.sqrt(((D.x-C.x)*(D.x-C.x))+((D.y-C.y)*(D.y-C.y)));if(I>Math.PI){I-=Math.PI*2
}var L=Math.round(Q*Math.sin(I));var J=Math.round(Q*Math.cos(I));var G=new GPoint(D.x+L,D.y+J);
S=new GPoint(C.x+L,C.y+J);if(U==1){Y.push(this.prj.fromPixelToLatLng(G,B))}else{if(I==O){Y.push(this.prj.fromPixelToLatLng(G,B))
}else{var K=this.intersect(E,H,G,S);var F=(K.x-D.x);var P=(K.y-D.y);var V=Math.sqrt((F*F)+(P*P));
var M=Q/V;var W=I-O;if(W<(Math.PI*2)){W+=Math.PI*2}if(W>(Math.PI*2)){W-=Math.PI*2
}if(T>Q){if(W<Math.PI){Y.push(this.prj.fromPixelToLatLng(G,B))}else{if(V<T){Y.push(this.prj.fromPixelToLatLng(K,B))
}}}dxi=(K.x-D.x)*(K.x-D.x);dyi=(K.y-D.y)*(K.y-D.y)}}if(U==1||T>Q){E=G;H=S;O=I;R=1
}else{R+=1}}Y.push(this.prj.fromPixelToLatLng(S,B));var X=false;if(this.line){X=this.isHidden();
this.map.removeOverlay(this.line)}this.line=new ArrowedPolyline(Y,this.options);this.map.addOverlay(this.line);
if(X){this.line.hide()}if(this.afterRecalc){this.afterRecalc(this.line)}this.idle=true
};A.prototype.intersect=function(H,F,E,C){var X,N,Q,W,M,P,K,D,B;var U=H.x;var L=H.y;
var T=F.x;var J=F.y;var S=E.x;var I=E.y;var R=C.x;var G=C.y;if((T-U)!==0){D=(J-L)/(T-U)
}else{D=10000000000}if((R-S)!==0){B=(G-I)/(R-S)}else{B=10000000000}X=D;W=B;N=-1;M=-1;
Q=(L-D*U);P=(I-B*S);K=1/(X*M-W*N);var O=((N*P-M*Q)*K);var V=((W*Q-X*P)*K);return new GPoint(Math.round(O),Math.round(V))
};return A})();var ArrowedPolyline=(function(){var D=new GIcon();D.iconSize=new GSize(13,13);
D.shadowSize=new GSize(1,1);D.iconAnchor=new GPoint(7,7);D.infoWindowAnchor=new GPoint(0,0);
D.transparent="/map/images/arrows/transparent.png";D.image="http://www.google.com/intl/en_ALL/mapfiles/dir_:dir.png";
var E=function(F,G){if(F instanceof Array){this.polyline=new google.maps.Polyline(F,G)
}else{this.polyline=new google.maps.Polyline.fromEncoded(F,G)}this.line=F;this.options=G;
this.defaultArrow=new GIcon(D)};E.prototype=new GOverlay();E.prototype.initialize=function(F){this.map=F;
this.map.addOverlay(this.polyline);this.setStrokeStyle(this.options||{})};E.prototype.setStrokeStyle=function(F){this.options=$extend(this.options,F);
this.polyline.setStrokeStyle(this.options);this.addArrow(this.options)};E.prototype.show=function(){if(this.arrow){this.arrow.show()
}if(this.polyline){this.polyline.show()}};E.prototype.hide=function(){if(this.arrow){this.arrow.hide()
}if(this.polyline){this.polyline.hide()}};E.prototype.isHidden=function(){if(this.polyline){return this.polyline.isHidden()
}};E.prototype.addArrow=function(H){var G=false;if(this.arrow){G=this.arrow.isHidden();
this.map.removeOverlay(this.arrow);this.arrow=null}if(H.icon){var I=H.icon;this.defaultArrow.image=I.image;
this.defaultArrow.printImage=I.printImage;this.defaultArrow.mozPrintImage=I.mozPrintImage
}var F=this.polyline.getVertexCount();this.arrow=C(this.polyline.getVertex(F-1),this.polyline.getVertex(F-2),this.defaultArrow);
this.map.addOverlay(this.arrow);if(G){this.arrow.hide()}};E.prototype.remove=function(){if(this.polyline){this.map.removeOverlay(this.polyline);
this.polyline=null}if(this.arrow){this.map.removeOverlay(this.arrow);this.arrow=null
}};E.prototype.copy=function(){new E(this.line,this.options)};E.prototype.redraw=function(F){return 
};var B=180/Math.PI;function A(L,K){var J=L.latRadians();var G=L.lngRadians();var H=K.latRadians();
var F=K.lngRadians();var I=-Math.atan2(Math.sin(G-F)*Math.cos(H),Math.cos(J)*Math.sin(H)-Math.sin(J)*Math.cos(H)*Math.cos(G-F));
if(I<0){I+=Math.PI*2}I=I*B;I=I.toFixed(1);return I}function C(I,H,G){var F=A(H,I);
var F=Math.round(F/3)*3;while(F>=120){F-=120}G.image=G.image.replace(":dir",F);G.printImage=G.printImage?G.printImage.replace(":dir",F):"";
G.mozPrintImage=G.mozPrintImage?G.mozPrintImage.replace(":dir",F):"";return new GMarker(I,G)
}return E})();var Routes={MSV_A15_RZB:{points:[new GLatLng(51.92815,4.04549),new GLatLng(51.931650000000005,4.060720000000001),new GLatLng(51.932750000000006,4.0657700000000006),new GLatLng(51.93314,4.06805),new GLatLng(51.93375,4.07378),new GLatLng(51.933930000000004,4.0779000000000005),new GLatLng(51.93388,4.08174),new GLatLng(51.933510000000005,4.08652),new GLatLng(51.93238,4.094950000000001),new GLatLng(51.932,4.098260000000001),new GLatLng(51.932010000000005,4.1013),new GLatLng(51.9326,4.103330000000001),new GLatLng(51.933400000000006,4.10468),new GLatLng(51.935190000000006,4.1059600000000005),new GLatLng(51.938230000000004,4.10707),new GLatLng(51.938930000000006,4.1074600000000006),new GLatLng(51.939910000000005,4.10864),new GLatLng(51.940450000000006,4.109990000000001),new GLatLng(51.94003000000001,4.11502),new GLatLng(51.939330000000005,4.1165400000000005),new GLatLng(51.937960000000004,4.11885),new GLatLng(51.93744,4.12019),new GLatLng(51.937000000000005,4.12213),new GLatLng(51.934850000000004,4.13665),new GLatLng(51.93509,4.13807),new GLatLng(51.93641,4.1441300000000005),new GLatLng(51.93654,4.145560000000001),new GLatLng(51.93605,4.1489400000000005),new GLatLng(51.933510000000005,4.156350000000001),new GLatLng(51.93162,4.16216),new GLatLng(51.93119,4.164300000000001),new GLatLng(51.93077,4.165900000000001),new GLatLng(51.930260000000004,4.16734),new GLatLng(51.929680000000005,4.168620000000001),new GLatLng(51.92833,4.17079),new GLatLng(51.927620000000005,4.171600000000001),new GLatLng(51.925830000000005,4.17314),new GLatLng(51.92273,4.17529),new GLatLng(51.92065,4.177090000000001),new GLatLng(51.919230000000006,4.17914),new GLatLng(51.918440000000004,4.180700000000001),new GLatLng(51.91599,4.18583),new GLatLng(51.91071,4.196400000000001),new GLatLng(51.909110000000005,4.19972),new GLatLng(51.90795000000001,4.2023600000000005),new GLatLng(51.90699000000001,4.20423),new GLatLng(51.905770000000004,4.206300000000001),new GLatLng(51.90269000000001,4.21241),new GLatLng(51.901680000000006,4.214840000000001),new GLatLng(51.90084,4.21774),new GLatLng(51.90048,4.219600000000001),new GLatLng(51.900150000000004,4.22398),new GLatLng(51.90032000000001,4.230370000000001),new GLatLng(51.90006,4.234120000000001),new GLatLng(51.89951000000001,4.23721),new GLatLng(51.89849,4.24244),new GLatLng(51.896370000000005,4.25375),new GLatLng(51.89529,4.25748),new GLatLng(51.894330000000004,4.25887),new GLatLng(51.89332,4.25969),new GLatLng(51.89247,4.26003),new GLatLng(51.88955000000001,4.25917)]},RZB_A15_MSV:{points:[new GLatLng(51.88951,4.259340000000001),new GLatLng(51.89141000000001,4.2602400000000005),new GLatLng(51.89202,4.260280000000001),new GLatLng(51.89294,4.26009),new GLatLng(51.893800000000006,4.2596300000000005),new GLatLng(51.895010000000006,4.2583400000000005),new GLatLng(51.895500000000006,4.25752),new GLatLng(51.896260000000005,4.25523),new GLatLng(51.898700000000005,4.2424800000000005),new GLatLng(51.900180000000006,4.234430000000001),new GLatLng(51.9005,4.230460000000001),new GLatLng(51.90035,4.22301),new GLatLng(51.900780000000005,4.21914),new GLatLng(51.901270000000004,4.216950000000001),new GLatLng(51.901990000000005,4.214790000000001),new GLatLng(51.902480000000004,4.21361),new GLatLng(51.904090000000004,4.210030000000001),new GLatLng(51.90636000000001,4.20553),new GLatLng(51.90717,4.2041200000000005),new GLatLng(51.90959,4.19897),new GLatLng(51.91846,4.18114),new GLatLng(51.919940000000004,4.17846),new GLatLng(51.92089000000001,4.17725),new GLatLng(51.921890000000005,4.17624),new GLatLng(51.92307,4.1753100000000005),new GLatLng(51.92531,4.17375),new GLatLng(51.926930000000006,4.172470000000001),new GLatLng(51.92859000000001,4.1707),new GLatLng(51.92972,4.168880000000001),new GLatLng(51.930440000000004,4.16729),new GLatLng(51.93126,4.16453),new GLatLng(51.93188000000001,4.1616100000000005),new GLatLng(51.93357,4.1565),new GLatLng(51.93574,4.15029),new GLatLng(51.936220000000006,4.14885),new GLatLng(51.93659,4.14712),new GLatLng(51.93666,4.14522),new GLatLng(51.93639,4.143400000000001),new GLatLng(51.935520000000004,4.139390000000001),new GLatLng(51.93502,4.136880000000001),new GLatLng(51.93493,4.13518),new GLatLng(51.935050000000004,4.13342),new GLatLng(51.937000000000005,4.12281),new GLatLng(51.937400000000004,4.1208800000000005),new GLatLng(51.938230000000004,4.1186300000000005),new GLatLng(51.93939,4.11671),new GLatLng(51.94042,4.1142900000000004),new GLatLng(51.940690000000004,4.11329),new GLatLng(51.9408,4.111680000000001),new GLatLng(51.94068000000001,4.110580000000001),new GLatLng(51.94005000000001,4.1086800000000006),new GLatLng(51.9395,4.107810000000001),new GLatLng(51.93858,4.10705),new GLatLng(51.935790000000004,4.10609),new GLatLng(51.93518,4.10578),new GLatLng(51.934490000000004,4.10529),new GLatLng(51.9335,4.10425),new GLatLng(51.93300000000001,4.10357),new GLatLng(51.93263,4.1028),new GLatLng(51.93229,4.1016),new GLatLng(51.932100000000005,4.10017),new GLatLng(51.932100000000005,4.09936),new GLatLng(51.93216,4.09848),new GLatLng(51.932840000000006,4.0926),new GLatLng(51.933350000000004,4.08877),new GLatLng(51.933730000000004,4.085430000000001),new GLatLng(51.93395,4.08298),new GLatLng(51.93406,4.07974),new GLatLng(51.93406,4.0773600000000005),new GLatLng(51.933960000000006,4.07469),new GLatLng(51.933840000000004,4.072900000000001),new GLatLng(51.933600000000006,4.070390000000001),new GLatLng(51.933420000000005,4.06899),new GLatLng(51.933260000000004,4.06785),new GLatLng(51.93282000000001,4.06541),new GLatLng(51.932570000000005,4.06419),new GLatLng(51.928070000000005,4.04467)]},RZB_A15_BNL:{points:[new GLatLng(51.88955000000001,4.25917),new GLatLng(51.887240000000006,4.258360000000001),new GLatLng(51.886030000000005,4.25835),new GLatLng(51.883210000000005,4.2595),new GLatLng(51.87335,4.264690000000001),new GLatLng(51.871030000000005,4.26647),new GLatLng(51.86912,4.26973),new GLatLng(51.868170000000006,4.2731),new GLatLng(51.867540000000005,4.27749),new GLatLng(51.86741000000001,4.2808600000000006),new GLatLng(51.867490000000004,4.28477),new GLatLng(51.86795000000001,4.29553),new GLatLng(51.86885,4.31001),new GLatLng(51.869580000000006,4.317480000000001),new GLatLng(51.86972,4.32127),new GLatLng(51.870520000000006,4.330900000000001),new GLatLng(51.873020000000004,4.34079),new GLatLng(51.873940000000005,4.344650000000001),new GLatLng(51.87492,4.34889),new GLatLng(51.87520000000001,4.35113),new GLatLng(51.875980000000006,4.3613800000000005),new GLatLng(51.87613,4.36517),new GLatLng(51.875840000000004,4.36998),new GLatLng(51.875280000000004,4.373060000000001),new GLatLng(51.87370000000001,4.379930000000001),new GLatLng(51.873110000000004,4.38374),new GLatLng(51.872910000000005,4.386640000000001)]},BNL_A15_RZB:{points:[new GLatLng(51.87313,4.3868100000000005),new GLatLng(51.87333,4.38387),new GLatLng(51.873900000000006,4.38015),new GLatLng(51.874500000000005,4.37741),new GLatLng(51.87514,4.3748000000000005),new GLatLng(51.87558000000001,4.3726),new GLatLng(51.87621000000001,4.368200000000001),new GLatLng(51.87628,4.364850000000001),new GLatLng(51.87617,4.36174),new GLatLng(51.8755,4.35261),new GLatLng(51.87494,4.348000000000001),new GLatLng(51.874500000000005,4.34602),new GLatLng(51.873250000000006,4.34117),new GLatLng(51.87232,4.337560000000001),new GLatLng(51.87088000000001,4.33202),new GLatLng(51.870450000000005,4.33012),new GLatLng(51.870140000000006,4.3270100000000005),new GLatLng(51.869960000000006,4.3234900000000005),new GLatLng(51.8697,4.3171100000000004),new GLatLng(51.86943,4.31425),new GLatLng(51.86901,4.31052),new GLatLng(51.86854,4.30306),new GLatLng(51.868140000000004,4.295450000000001),new GLatLng(51.867580000000004,4.28282),new GLatLng(51.867540000000005,4.27981),new GLatLng(51.86771,4.2769900000000005),new GLatLng(51.86815000000001,4.2740100000000005),new GLatLng(51.86909000000001,4.270250000000001),new GLatLng(51.87006,4.26813),new GLatLng(51.87183,4.265910000000001),new GLatLng(51.87265000000001,4.26531),new GLatLng(51.88324000000001,4.2597000000000005),new GLatLng(51.88454,4.259060000000001),new GLatLng(51.886680000000005,4.25853),new GLatLng(51.88951,4.259340000000001)]},BNL_A15_VNP:{points:[new GLatLng(51.872910000000005,4.3866700000000005),new GLatLng(51.873310000000004,4.39431),new GLatLng(51.87357,4.403700000000001),new GLatLng(51.873450000000005,4.40775),new GLatLng(51.87304,4.41364),new GLatLng(51.87259,4.4179200000000005),new GLatLng(51.87125,4.42588),new GLatLng(51.869080000000004,4.4359),new GLatLng(51.867250000000006,4.44346),new GLatLng(51.863640000000004,4.45844),new GLatLng(51.86289000000001,4.46168),new GLatLng(51.862010000000005,4.46886),new GLatLng(51.862100000000005,4.474200000000001),new GLatLng(51.862680000000005,4.48202),new GLatLng(51.864760000000004,4.495220000000001),new GLatLng(51.865500000000004,4.50345),new GLatLng(51.865410000000004,4.515560000000001)]},VNP_A15_BNL:{points:[new GLatLng(51.865590000000005,4.51557),new GLatLng(51.865750000000006,4.512370000000001),new GLatLng(51.86580000000001,4.50774),new GLatLng(51.86522,4.4977100000000005),new GLatLng(51.86491,4.49507),new GLatLng(51.86305,4.483490000000001),new GLatLng(51.862700000000004,4.4803500000000005),new GLatLng(51.862190000000005,4.4728),new GLatLng(51.86231,4.466810000000001),new GLatLng(51.86283,4.46285),new GLatLng(51.86343,4.4600100000000005),new GLatLng(51.864900000000006,4.45406),new GLatLng(51.86807,4.440790000000001),new GLatLng(51.86914,4.43644),new GLatLng(51.870050000000006,4.43252),new GLatLng(51.871190000000006,4.427040000000001),new GLatLng(51.871660000000006,4.424510000000001),new GLatLng(51.87229000000001,4.42093),new GLatLng(51.872870000000006,4.416860000000001),new GLatLng(51.873310000000004,4.412330000000001),new GLatLng(51.87362,4.4081),new GLatLng(51.87371,4.405550000000001),new GLatLng(51.873760000000004,4.40286),new GLatLng(51.87368000000001,4.399360000000001),new GLatLng(51.873490000000004,4.39479),new GLatLng(51.87314000000001,4.389670000000001),new GLatLng(51.87313,4.3868100000000005)]}};
var Icons=(function(){var C=google.maps;var I="/map";var D=function(B){return new C.Size(B[0],B[1])
};var A=function(B){return new C.Point(B[0],B[1])};var H=new C.Icon(G_DEFAULT_ICON);
H.image=I+"/images/markers/vo.png";H.shadow=I+"/images/markers/shadow.png";H.printShadow=I+"/images/markers/printShadow.gif";
H.transparent=I+"/images/markers/transparent.png";H.iconSize=D([28,33]);H.shadowSize=D([45,33]);
H.iconAnchor=A([14,33]);H.infoWindowAnchor=A([14,0]);H.imageMap=[19,0,20,1,22,2,23,3,24,4,24,5,25,6,26,7,26,8,26,9,26,10,27,11,27,12,27,13,27,14,26,15,26,16,26,17,26,18,25,19,25,20,24,21,23,22,22,23,21,24,19,25,18,26,17,27,16,28,15,29,15,30,15,31,13,31,13,30,12,29,12,28,11,27,9,26,8,25,7,24,5,23,4,22,3,21,3,20,2,19,1,18,1,17,1,16,1,15,1,14,1,13,1,12,1,11,1,10,1,9,1,8,2,7,2,6,3,5,3,4,4,3,5,2,7,1,8,0];
var E=function(B){var G=new C.Icon(H);if(!B){return G}var J=function(K,L){if(!B[K]){return 
}if(L){G[K]=L(B[K])}else{G[K]=B[K]}};J("image");J("shadow");J("printImage");J("mozPrintImage");
J("printShadow");J("transparent");J("imageMap");J("iconSize",D);J("shadowSize",D);
J("iconAnchor",A);J("infoWindowAnchor",A);return G};var F={};F["default"]=E();F.bike=E({image:I+"/images/markers/bike.png",printImage:I+"/images/markers/bike_print.gif",mozPrintImage:I+"/images/markers/bike_mozprint.gif"});
F.bus=E({image:I+"/images/markers/bus.png",printImage:I+"/images/markers/bus_print.gif",mozPrintImage:I+"/images/markers/bus_mozprint.gif"});
F.carpool=E({image:I+"/images/markers/carpool.png",printImage:I+"/images/markers/carpool_print.gif",mozPrintImage:I+"/images/markers/carpool_mozprint.gif"});
F.ferry=E({image:I+"/images/markers/ferry.png",printImage:I+"/images/markers/ferry_print.gif",mozPrintImage:I+"/images/markers/ferry_mozprint.gif"});
F.fiets=E({image:I+"/images/markers/fiets.png",printImage:I+"/images/markers/fiets_print.gif",mozPrintImage:I+"/images/markers/fiets_mozprint.gif"});
F["i-average"]=E({image:I+"/images/markers/i-average.png",printImage:I+"/images/markers/i-average_print.gif",mozPrintImage:I+"/images/markers/i-average_mozprint.gif"});
F["i-normal"]=E({image:I+"/images/markers/i-normal.png",printImage:I+"/images/markers/i-normal_print.gif",mozPrintImage:I+"/images/markers/i-normal_mozprint.gif"});
F["i-severe"]=E({image:I+"/images/markers/i-severe.png",printImage:I+"/images/markers/i-severe_print.gif",mozPrintImage:I+"/images/markers/i-severe_mozprint.gif"});
F["i-unknown"]=E({image:I+"/images/markers/i-unknown.png",printImage:I+"/images/markers/i-unknown_print.gif",mozPrintImage:I+"/images/markers/i-unknown_mozprint.gif"});
F.park_and_ride=E({image:I+"/images/markers/park_and_ride.png",printImage:I+"/images/markers/park_and_ride_print.gif",mozPrintImage:I+"/images/markers/park_and_ride_mozprint.gif"});
F.parking=E({image:I+"/images/markers/parking.png",printImage:I+"/images/markers/parking_print.gif",mozPrintImage:I+"/images/markers/parking_mozprint.gif"});
F.subway=E({image:I+"/images/markers/subway.png",printImage:I+"/images/markers/subway_print.gif",mozPrintImage:I+"/images/markers/subway_mozprint.gif"});
F.train=E({image:I+"/images/markers/train.png",printImage:I+"/images/markers/train_print.gif",mozPrintImage:I+"/images/markers/train_mozprint.gif"});
F.vo=E({image:I+"/images/markers/vo.png",printImage:I+"/images/markers/vo_print.gif",mozPrintImage:I+"/images/markers/vo_mozprint.gif"});
F.deelnemer=E({image:I+"/images/markers/deelnemer.png",printImage:I+"/images/markers/deelnemer_print.gif",mozPrintImage:I+"/images/markers/deelnemer_mozprint.gif"});
F.workplace=E({image:I+"/images/markers/workplace.png",printImage:I+"/images/markers/workplace_print.gif",mozPrintImage:I+"/images/markers/workplace_mozprint.gif"});
return F})();var VOMap=(function(){var C=google.maps;var F="/map";var A=function(){this.options={mapType:G_NORMAL_MAP,center:new C.LatLng(51.89174901806822,4.2757415771484375),zoom:11};
this.initialize=function(B){this.canvas=$(B);if(arguments[1]){this.options=$extend(this.options,arguments[1])
}this.map=new C.Map2(this.canvas,this.options);this.map.enableScrollWheelZoom();this.map.setCenter(this.options.center,this.options.zoom);
if(this.options.fullscreen){this.map.addControl(new C.LargeMapControl());this.map.addControl(new C.ScaleControl())
}else{this.map.addControl(new C.SmallMapControl())}this.streams={};this.routes={}
};this.addDataStream=function(G,H,B){if(!H){return }var I=new D(this,G,H,B);this.streams[G]=I
};this.addRoute=function(H,I,G,B){this.routes[H]=new E(this,H,I,G,B)};this.reloadRoute=function(B,G){if(this.routes[B]){this.routes[B].reload(G)
}};this.initialize.apply(this,arguments)};var E=function(){var K={unknown:"#666666",normal:"#99cc00",average:"#ff701e",severe:"#c0001f"};
var I={unknown:{image:F+"/images/arrows/gray_:dir.png",printImage:F+"/images/arrows/gray_print_:dir.gif",mozPrintImage:F+"/images/arrows/gray_mozprint_:dir.gif"},normal:{image:F+"/images/arrows/green_:dir.png",printImage:F+"/images/arrows/green_print_:dir.gif",mozPrintImage:F+"/images/arrows/green_mozprint_:dir.gif"},average:{image:F+"/images/arrows/orange_:dir.png",printImage:F+"/images/arrows/orange_print_:dir.gif",mozPrintImage:F+"/images/arrows/orange_mozprint_:dir.gif"},severe:{image:F+"/images/arrows/red_:dir.png",printImage:F+"/images/arrows/red_print_:dir.gif",mozPrintImage:F+"/images/arrows/red_mozprint_:dir.gif"}};
var M={unknown:Icons["i-unknown"],normal:Icons["i-normal"],average:Icons["i-average"],severe:Icons["i-severe"]};
this.options={control:function(){return $("route_"+this.name)}};this.initialize=function(R,P,Q,O,N){this.map=R;
this.name=P;this.routeInfo=Q;this.line=null;this.lineOptions={weight:5,opacity:1,color:K.unknown};
this.options=$merge(this.options,N);if(this.options.control){this.control=this.options.control.apply(this);
if(this.control){this.control.addEvent("click",function(){if(this.control.get("checked")){this.show()
}else{this.hide()}}.bind(this))}}this.draw();this.reload(O);if(this.control){if(this.control.get("checked")){this.show()
}else{this.hide()}}else{this.show()}};this.show=function(){if(!this.line){this.draw()
}this.line.show();J.apply(this);if(this.options.onShow){this.options.onShow(this)
}};this.hide=function(){if(this.line){this.line.hide()}G.apply(this);if(this.options.onHide){this.options.onHide(this)
}};this.reload=function(N){var O=this.trafficData&&this.trafficData.delay;this.trafficData=N||{};
if(this.options.onUpdate){this.options.onUpdate(this)}if(O!=this.trafficData.delay){this.line.setStrokeStyle({color:this.getDelayValue(K),icon:this.getDelayValue(I)});
if(this.infoMarker){H.apply(this,[this.infoMarker.getLatLng()])}}};this.remove=function(){if(this.line){this.map.map.removeOverlay(this.line)
}};this.draw=function(){var N=this.line&&this.line.isHidden();this.remove();var O=$extend({},this.lineOptions);
O.color=this.getDelayValue(K);O.icon=this.getDelayValue(I);this.line=new OffsetLine(this.routeInfo.points,5,O);
this.line.afterRecalc=L.bind(this);this.map.map.addOverlay(this.line);if(N){this.line.hide()
}};var L=function(O){var N=O.polyline;var P=B(N,N.getLength()/2);if(this.infoMarker){this.infoMarker.setLatLng(P)
}else{H.apply(this,[P])}};var H=function(Q){var P=false;if(this.infoMarker){GEvent.clearListeners(this.infoMarker);
this.map.map.removeOverlay(this.infoMarker);P=this.infoMarker.isHidden()}this.infoMarker=new GMarker(Q,this.getDelayValue(M));
var O=this.name;var N=this.infoMarker;C.Event.addListener(this.infoMarker,"click",function(){var R=$("info_"+O);
if(R){N.openInfoWindow(R.cloneNode(true))}});this.map.map.addOverlay(this.infoMarker);
if(P){this.infoMarker.hide()}else{this.infoMarker.show()}};var J=function(){if(this.infoMarker){this.infoMarker.show()
}};var G=function(){if(this.infoMarker){this.infoMarker.hide()}};var B=function(P,O){if(O===0){return P.getVertex(0)
}if(O<0){return null}var U=0;var Q=0;for(var R=1;(R<P.getVertexCount()&&U<O);R++){Q=U;
U+=P.getVertex(R).distanceFrom(P.getVertex(R-1))}if(U<O){return null}var T=P.getVertex(R-2);
var S=P.getVertex(R-1);var N=(O-Q)/(U-Q);return new GLatLng(T.lat()+(S.lat()-T.lat())*N,T.lng()+(S.lng()-T.lng())*N)
};this.getDelayValue=function(N){if(!this.trafficData){return N.unknown}var O=N[this.trafficData.delay];
if(O){return O}else{return N.unknown}};this.initialize.apply(this,arguments)};var D=function(){this.options={icon:Icons["default"],control:function(){return $("show_"+this.name)
}};this.initialize=function(L,J,K,I){this.map=L;this.name=J;this.data=K;this.markers=$A([]);
this.overlays=$A([]);this.shown=false;this.mgr=new MarkerManager(this.map.map);this.options=$merge(this.options,I);
if(this.options.control){this.control=this.options.control.apply(this);if(this.control){this.control.addEvent("click",function(){if(this.control.get("checked")){this.show()
}else{this.hide()}}.bind(this))}}this.markerOptions={};if($type(this.options.icon)=="string"){this.markerOptions.icon=Icons[this.options.icon]
}else{this.markerOptions.icon=this.options.icon}this.refresh()};this.show=function(){this.mgr.addMarkers(this.markers,0);
this.mgr.refresh();this.overlays.each(function(I){I.show()});this.shown=true};this.hide=function(){this.mgr.clearMarkers();
this.overlays.each(function(I){I.hide()});this.shown=false};this.refresh=function(){this.mgr.clearMarkers();
this.markers.empty();this.overlays.each(function(I){this.map.map.removeOverlay(I)
});this.overlays.empty();$A(this.data).each(function(J){if(J.type=="polygon"){var I=G.apply(this,[J]);
this.overlays.push(I);this.map.map.addOverlay(I)}else{this.markers.push(H.apply(this,[J]))
}}.bind(this));if(this.control){if(this.control.get("checked")){this.show()}else{this.hide()
}}else{this.show()}};var H=function(J){var L=$merge(this.markerOptions,L);var K=this.map.map;
L.title=J.name;var I=new C.Marker(new C.LatLng(J.coordinates[1],J.coordinates[0]),L);
C.Event.addListener(I,"click",function(){I.openInfoWindow(B(J))});return I};var G=function(J){var L={};
var K=this.map.map;var I=C.Polygon.fromEncoded({polylines:[J.line],color:J.color,opacity:J.opacity,fill:J.fill,outline:J.outline});
C.Event.addListener(I,"click",function(){K.openInfoWindow(I.getBounds().getCenter(),B(J))
});return I};var B=function(I){return new Element("div",{"class":"mapinfo"}).adopt(new Element("div",{"class":"head",html:I.name}),new Element("div",{"class":"content",html:I.description}))
};this.initialize.apply(this,arguments)};window.addEvent("unload",C.Unload);return A
})();VOMap.updateDelays=function(C){if(!C.control){return }var B=function(I){if(!I){return"onbekend"
}var H=parseInt((I*1)/60);if(H==0){return"geen"}else{return H+" min"}};if(!C._delayEls&&!C._traveltimeEls){var F=C.control.getParent("li");
var E=$("info_"+C.name);var G=F.getElements(".delay");var A=F.getElements(".traveltime");
if(E){G.extend(E.getElements(".delay"));A.extend(E.getElements(".traveltime"));C._headEl=E.getElement(".head")
}C._delayEls=G;C._traveltimeEls=A;C._routeInfoEl=E}var D=C.trafficData&&C.trafficData.delay;
if(!C.trafficData||!D){if(C._routeInfoEl){C._routeInfoEl.set("class","unknown");C._headEl.set("html","Onbekende verkeersinformatie")
}C._delayEls.set("html","onbekend");C._traveltimeEls.set("html","onbekend")}else{if(C._routeInfoEl){C._routeInfoEl.set("class",D);
if(D=="normal"){C._headEl.set("html","Goede doorstroming")}else{if(D=="average"){C._headEl.set("html","Matige vertraging")
}else{if(D=="severe"){C._headEl.set("html","Ernstige vertraging")}}}}C._delayEls.set("html",B(C.trafficData.delaytime));
C._traveltimeEls.set("html",B(C.trafficData.traveltime))}};VOMap.showDelays=function(A){var B=A.control.getParent("li");
B.getElement(".info").setStyle("display","block")};VOMap.hideDelays=function(A){var B=A.control.getParent("li");
B.getElement(".info").setStyle("display","none")};VOMap.options={};
