<!DOCTYPE html>
<html data-env='production' lang='en' xml:lang='en'>
<head>
<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"faaaef6476","applicationID":"1135420","transactionName":"cAkNR0ENXQpXF0tJDUASEBxACl4R","queueTime":0,"applicationTime":66,"agent":""}</script>
<script type="text/javascript">(window.NREUM||(NREUM={})).loader_config={xpid:"VwYHUF9ACQIDUVVQBw=="};window.NREUM||(NREUM={}),__nr_require=function(t,e,n){function r(n){if(!e[n]){var o=e[n]={exports:{}};t[n][0].call(o.exports,function(e){var o=t[n][1][e];return r(o||e)},o,o.exports)}return e[n].exports}if("function"==typeof __nr_require)return __nr_require;for(var o=0;o<n.length;o++)r(n[o]);return r}({1:[function(t,e,n){function r(t){try{c.console&&console.log(t)}catch(e){}}var o,i=t("ee"),a=t(20),c={};try{o=localStorage.getItem("__nr_flags").split(","),console&&"function"==typeof console.log&&(c.console=!0,o.indexOf("dev")!==-1&&(c.dev=!0),o.indexOf("nr_dev")!==-1&&(c.nrDev=!0))}catch(s){}c.nrDev&&i.on("internal-error",function(t){r(t.stack)}),c.dev&&i.on("fn-err",function(t,e,n){r(n.stack)}),c.dev&&(r("NR AGENT IN DEVELOPMENT MODE"),r("flags: "+a(c,function(t,e){return t}).join(", ")))},{}],2:[function(t,e,n){function r(t,e,n,r,c){try{h?h-=1:o(c||new UncaughtException(t,e,n),!0)}catch(f){try{i("ierr",[f,s.now(),!0])}catch(d){}}return"function"==typeof u&&u.apply(this,a(arguments))}function UncaughtException(t,e,n){this.message=t||"Uncaught error with no additional information",this.sourceURL=e,this.line=n}function o(t,e){var n=e?null:s.now();i("err",[t,n])}var i=t("handle"),a=t(21),c=t("ee"),s=t("loader"),f=t("gos"),u=window.onerror,d=!1,p="nr@seenError",h=0;s.features.err=!0,t(1),window.onerror=r;try{throw new Error}catch(l){"stack"in l&&(t(13),t(12),"addEventListener"in window&&t(6),s.xhrWrappable&&t(14),d=!0)}c.on("fn-start",function(t,e,n){d&&(h+=1)}),c.on("fn-err",function(t,e,n){d&&!n[p]&&(f(n,p,function(){return!0}),this.thrown=!0,o(n))}),c.on("fn-end",function(){d&&!this.thrown&&h>0&&(h-=1)}),c.on("internal-error",function(t){i("ierr",[t,s.now(),!0])})},{}],3:[function(t,e,n){t("loader").features.ins=!0},{}],4:[function(t,e,n){function r(){M++,S=y.hash,this[u]=b.now()}function o(){M--,y.hash!==S&&i(0,!0);var t=b.now();this[l]=~~this[l]+t-this[u],this[d]=t}function i(t,e){E.emit("newURL",[""+y,e])}function a(t,e){t.on(e,function(){this[e]=b.now()})}var c="-start",s="-end",f="-body",u="fn"+c,d="fn"+s,p="cb"+c,h="cb"+s,l="jsTime",m="fetch",v="addEventListener",w=window,y=w.location,b=t("loader");if(w[v]&&b.xhrWrappable){var g=t(10),x=t(11),E=t(8),P=t(6),O=t(13),R=t(7),T=t(14),L=t(9),j=t("ee"),N=j.get("tracer");t(15),b.features.spa=!0;var S,M=0;j.on(u,r),j.on(p,r),j.on(d,o),j.on(h,o),j.buffer([u,d,"xhr-done","xhr-resolved"]),P.buffer([u]),O.buffer(["setTimeout"+s,"clearTimeout"+c,u]),T.buffer([u,"new-xhr","send-xhr"+c]),R.buffer([m+c,m+"-done",m+f+c,m+f+s]),E.buffer(["newURL"]),g.buffer([u]),x.buffer(["propagate",p,h,"executor-err","resolve"+c]),N.buffer([u,"no-"+u]),L.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"]),a(T,"send-xhr"+c),a(j,"xhr-resolved"),a(j,"xhr-done"),a(R,m+c),a(R,m+"-done"),a(L,"new-jsonp"),a(L,"jsonp-end"),a(L,"cb-start"),E.on("pushState-end",i),E.on("replaceState-end",i),w[v]("hashchange",i,!0),w[v]("load",i,!0),w[v]("popstate",function(){i(0,M>1)},!0)}},{}],5:[function(t,e,n){function r(t){}if(window.performance&&window.performance.timing&&window.performance.getEntriesByType){var o=t("ee"),i=t("handle"),a=t(13),c=t(12),s="learResourceTimings",f="addEventListener",u="resourcetimingbufferfull",d="bstResource",p="resource",h="-start",l="-end",m="fn"+h,v="fn"+l,w="bstTimer",y="pushState",b=t("loader");b.features.stn=!0,t(8);var g=NREUM.o.EV;o.on(m,function(t,e){var n=t[0];n instanceof g&&(this.bstStart=b.now())}),o.on(v,function(t,e){var n=t[0];n instanceof g&&i("bst",[n,e,this.bstStart,b.now()])}),a.on(m,function(t,e,n){this.bstStart=b.now(),this.bstType=n}),a.on(v,function(t,e){i(w,[e,this.bstStart,b.now(),this.bstType])}),c.on(m,function(){this.bstStart=b.now()}),c.on(v,function(t,e){i(w,[e,this.bstStart,b.now(),"requestAnimationFrame"])}),o.on(y+h,function(t){this.time=b.now(),this.startPath=location.pathname+location.hash}),o.on(y+l,function(t){i("bstHist",[location.pathname+location.hash,this.startPath,this.time])}),f in window.performance&&(window.performance["c"+s]?window.performance[f](u,function(t){i(d,[window.performance.getEntriesByType(p)]),window.performance["c"+s]()},!1):window.performance[f]("webkit"+u,function(t){i(d,[window.performance.getEntriesByType(p)]),window.performance["webkitC"+s]()},!1)),document[f]("scroll",r,{passive:!0}),document[f]("keypress",r,!1),document[f]("click",r,!1)}},{}],6:[function(t,e,n){function r(t){for(var e=t;e&&!e.hasOwnProperty(u);)e=Object.getPrototypeOf(e);e&&o(e)}function o(t){c.inPlace(t,[u,d],"-",i)}function i(t,e){return t[1]}var a=t("ee").get("events"),c=t(23)(a,!0),s=t("gos"),f=XMLHttpRequest,u="addEventListener",d="removeEventListener";e.exports=a,"getPrototypeOf"in Object?(r(document),r(window),r(f.prototype)):f.prototype.hasOwnProperty(u)&&(o(window),o(f.prototype)),a.on(u+"-start",function(t,e){var n=t[1],r=s(n,"nr@wrapped",function(){function t(){if("function"==typeof n.handleEvent)return n.handleEvent.apply(n,arguments)}var e={object:t,"function":n}[typeof n];return e?c(e,"fn-",null,e.name||"anonymous"):n});this.wrapped=t[1]=r}),a.on(d+"-start",function(t){t[1]=this.wrapped||t[1]})},{}],7:[function(t,e,n){function r(t,e,n){var r=t[e];"function"==typeof r&&(t[e]=function(){var t=r.apply(this,arguments);return o.emit(n+"start",arguments,t),t.then(function(e){return o.emit(n+"end",[null,e],t),e},function(e){throw o.emit(n+"end",[e],t),e})})}var o=t("ee").get("fetch"),i=t(20);e.exports=o;var a=window,c="fetch-",s=c+"body-",f=["arrayBuffer","blob","json","text","formData"],u=a.Request,d=a.Response,p=a.fetch,h="prototype";u&&d&&p&&(i(f,function(t,e){r(u[h],e,s),r(d[h],e,s)}),r(a,"fetch",c),o.on(c+"end",function(t,e){var n=this;e?e.clone().arrayBuffer().then(function(t){n.rxSize=t.byteLength,o.emit(c+"done",[null,e],n)}):o.emit(c+"done",[t],n)}))},{}],8:[function(t,e,n){var r=t("ee").get("history"),o=t(23)(r);e.exports=r,o.inPlace(window.history,["pushState","replaceState"],"-")},{}],9:[function(t,e,n){function r(t){function e(){s.emit("jsonp-end",[],p),t.removeEventListener("load",e,!1),t.removeEventListener("error",n,!1)}function n(){s.emit("jsonp-error",[],p),s.emit("jsonp-end",[],p),t.removeEventListener("load",e,!1),t.removeEventListener("error",n,!1)}var r=t&&"string"==typeof t.nodeName&&"script"===t.nodeName.toLowerCase();if(r){var o="function"==typeof t.addEventListener;if(o){var a=i(t.src);if(a){var u=c(a),d="function"==typeof u.parent[u.key];if(d){var p={};f.inPlace(u.parent,[u.key],"cb-",p),t.addEventListener("load",e,!1),t.addEventListener("error",n,!1),s.emit("new-jsonp",[t.src],p)}}}}}function o(){return"addEventListener"in window}function i(t){var e=t.match(u);return e?e[1]:null}function a(t,e){var n=t.match(p),r=n[1],o=n[3];return o?a(o,e[r]):e[r]}function c(t){var e=t.match(d);return e&&e.length>=3?{key:e[2],parent:a(e[1],window)}:{key:t,parent:window}}var s=t("ee").get("jsonp"),f=t(23)(s);if(e.exports=s,o()){var u=/[?&](?:callback|cb)=([^&#]+)/,d=/(.*)\.([^.]+)/,p=/^(\w+)(\.|$)(.*)$/,h=["appendChild","insertBefore","replaceChild"];f.inPlace(HTMLElement.prototype,h,"dom-"),f.inPlace(HTMLHeadElement.prototype,h,"dom-"),f.inPlace(HTMLBodyElement.prototype,h,"dom-"),s.on("dom-start",function(t){r(t[0])})}},{}],10:[function(t,e,n){var r=t("ee").get("mutation"),o=t(23)(r),i=NREUM.o.MO;e.exports=r,i&&(window.MutationObserver=function(t){return this instanceof i?new i(o(t,"fn-")):i.apply(this,arguments)},MutationObserver.prototype=i.prototype)},{}],11:[function(t,e,n){function r(t){var e=a.context(),n=c(t,"executor-",e),r=new f(n);return a.context(r).getCtx=function(){return e},a.emit("new-promise",[r,e],e),r}function o(t,e){return e}var i=t(23),a=t("ee").get("promise"),c=i(a),s=t(20),f=NREUM.o.PR;e.exports=a,f&&(window.Promise=r,["all","race"].forEach(function(t){var e=f[t];f[t]=function(n){function r(t){return function(){a.emit("propagate",[null,!o],i),o=o||!t}}var o=!1;s(n,function(e,n){Promise.resolve(n).then(r("all"===t),r(!1))});var i=e.apply(f,arguments),c=f.resolve(i);return c}}),["resolve","reject"].forEach(function(t){var e=f[t];f[t]=function(t){var n=e.apply(f,arguments);return t!==n&&a.emit("propagate",[t,!0],n),n}}),f.prototype["catch"]=function(t){return this.then(null,t)},f.prototype=Object.create(f.prototype,{constructor:{value:r}}),s(Object.getOwnPropertyNames(f),function(t,e){try{r[e]=f[e]}catch(n){}}),a.on("executor-start",function(t){t[0]=c(t[0],"resolve-",this),t[1]=c(t[1],"resolve-",this)}),a.on("executor-err",function(t,e,n){t[1](n)}),c.inPlace(f.prototype,["then"],"then-",o),a.on("then-start",function(t,e){this.promise=e,t[0]=c(t[0],"cb-",this),t[1]=c(t[1],"cb-",this)}),a.on("then-end",function(t,e,n){this.nextPromise=n;var r=this.promise;a.emit("propagate",[r,!0],n)}),a.on("cb-end",function(t,e,n){a.emit("propagate",[n,!0],this.nextPromise)}),a.on("propagate",function(t,e,n){this.getCtx&&!e||(this.getCtx=function(){if(t instanceof Promise)var e=a.context(t);return e&&e.getCtx?e.getCtx():this})}),r.toString=function(){return""+f})},{}],12:[function(t,e,n){var r=t("ee").get("raf"),o=t(23)(r),i="equestAnimationFrame";e.exports=r,o.inPlace(window,["r"+i,"mozR"+i,"webkitR"+i,"msR"+i],"raf-"),r.on("raf-start",function(t){t[0]=o(t[0],"fn-")})},{}],13:[function(t,e,n){function r(t,e,n){t[0]=a(t[0],"fn-",null,n)}function o(t,e,n){this.method=n,this.timerDuration=isNaN(t[1])?0:+t[1],t[0]=a(t[0],"fn-",this,n)}var i=t("ee").get("timer"),a=t(23)(i),c="setTimeout",s="setInterval",f="clearTimeout",u="-start",d="-";e.exports=i,a.inPlace(window,[c,"setImmediate"],c+d),a.inPlace(window,[s],s+d),a.inPlace(window,[f,"clearImmediate"],f+d),i.on(s+u,r),i.on(c+u,o)},{}],14:[function(t,e,n){function r(t,e){d.inPlace(e,["onreadystatechange"],"fn-",c)}function o(){var t=this,e=u.context(t);t.readyState>3&&!e.resolved&&(e.resolved=!0,u.emit("xhr-resolved",[],t)),d.inPlace(t,y,"fn-",c)}function i(t){b.push(t),l&&(x?x.then(a):v?v(a):(E=-E,P.data=E))}function a(){for(var t=0;t<b.length;t++)r([],b[t]);b.length&&(b=[])}function c(t,e){return e}function s(t,e){for(var n in t)e[n]=t[n];return e}t(6);var f=t("ee"),u=f.get("xhr"),d=t(23)(u),p=NREUM.o,h=p.XHR,l=p.MO,m=p.PR,v=p.SI,w="readystatechange",y=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],b=[];e.exports=u;var g=window.XMLHttpRequest=function(t){var e=new h(t);try{u.emit("new-xhr",[e],e),e.addEventListener(w,o,!1)}catch(n){try{u.emit("internal-error",[n])}catch(r){}}return e};if(s(h,g),g.prototype=h.prototype,d.inPlace(g.prototype,["open","send"],"-xhr-",c),u.on("send-xhr-start",function(t,e){r(t,e),i(e)}),u.on("open-xhr-start",r),l){var x=m&&m.resolve();if(!v&&!m){var E=1,P=document.createTextNode(E);new l(a).observe(P,{characterData:!0})}}else f.on("fn-end",function(t){t[0]&&t[0].type===w||a()})},{}],15:[function(t,e,n){function r(t){var e=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(var r=0;r<d;r++)t.removeEventListener(u[r],this.listener,!1);if(!e.aborted){if(n.duration=a.now()-this.startTime,4===t.readyState){e.status=t.status;var i=o(t,this.lastSize);if(i&&(n.rxSize=i),this.sameOrigin){var s=t.getResponseHeader("X-NewRelic-App-Data");s&&(e.cat=s.split(", ").pop())}}else e.status=0;n.cbTime=this.cbTime,f.emit("xhr-done",[t],t),c("xhr",[e,n,this.startTime])}}}function o(t,e){var n=t.responseType;if("json"===n&&null!==e)return e;var r="arraybuffer"===n||"blob"===n||"json"===n?t.response:t.responseText;return l(r)}function i(t,e){var n=s(e),r=t.params;r.host=n.hostname+":"+n.port,r.pathname=n.pathname,t.sameOrigin=n.sameOrigin}var a=t("loader");if(a.xhrWrappable){var c=t("handle"),s=t(16),f=t("ee"),u=["load","error","abort","timeout"],d=u.length,p=t("id"),h=t(19),l=t(18),m=window.XMLHttpRequest;a.features.xhr=!0,t(14),f.on("new-xhr",function(t){var e=this;e.totalCbs=0,e.called=0,e.cbTime=0,e.end=r,e.ended=!1,e.xhrGuids={},e.lastSize=null,h&&(h>34||h<10)||window.opera||t.addEventListener("progress",function(t){e.lastSize=t.loaded},!1)}),f.on("open-xhr-start",function(t){this.params={method:t[0]},i(this,t[1]),this.metrics={}}),f.on("open-xhr-end",function(t,e){"loader_config"in NREUM&&"xpid"in NREUM.loader_config&&this.sameOrigin&&e.setRequestHeader("X-NewRelic-ID",NREUM.loader_config.xpid)}),f.on("send-xhr-start",function(t,e){var n=this.metrics,r=t[0],o=this;if(n&&r){var i=l(r);i&&(n.txSize=i)}this.startTime=a.now(),this.listener=function(t){try{"abort"===t.type&&(o.params.aborted=!0),("load"!==t.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof e.onload))&&o.end(e)}catch(n){try{f.emit("internal-error",[n])}catch(r){}}};for(var c=0;c<d;c++)e.addEventListener(u[c],this.listener,!1)}),f.on("xhr-cb-time",function(t,e,n){this.cbTime+=t,e?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof n.onload||this.end(n)}),f.on("xhr-load-added",function(t,e){var n=""+p(t)+!!e;this.xhrGuids&&!this.xhrGuids[n]&&(this.xhrGuids[n]=!0,this.totalCbs+=1)}),f.on("xhr-load-removed",function(t,e){var n=""+p(t)+!!e;this.xhrGuids&&this.xhrGuids[n]&&(delete this.xhrGuids[n],this.totalCbs-=1)}),f.on("addEventListener-end",function(t,e){e instanceof m&&"load"===t[0]&&f.emit("xhr-load-added",[t[1],t[2]],e)}),f.on("removeEventListener-end",function(t,e){e instanceof m&&"load"===t[0]&&f.emit("xhr-load-removed",[t[1],t[2]],e)}),f.on("fn-start",function(t,e,n){e instanceof m&&("onload"===n&&(this.onload=!0),("load"===(t[0]&&t[0].type)||this.onload)&&(this.xhrCbStart=a.now()))}),f.on("fn-end",function(t,e){this.xhrCbStart&&f.emit("xhr-cb-time",[a.now()-this.xhrCbStart,this.onload,e],e)})}},{}],16:[function(t,e,n){e.exports=function(t){var e=document.createElement("a"),n=window.location,r={};e.href=t,r.port=e.port;var o=e.href.split("://");!r.port&&o[1]&&(r.port=o[1].split("/")[0].split("@").pop().split(":")[1]),r.port&&"0"!==r.port||(r.port="https"===o[0]?"443":"80"),r.hostname=e.hostname||n.hostname,r.pathname=e.pathname,r.protocol=o[0],"/"!==r.pathname.charAt(0)&&(r.pathname="/"+r.pathname);var i=!e.protocol||":"===e.protocol||e.protocol===n.protocol,a=e.hostname===document.domain&&e.port===n.port;return r.sameOrigin=i&&(!e.hostname||a),r}},{}],17:[function(t,e,n){function r(){}function o(t,e,n){return function(){return i(t,[f.now()].concat(c(arguments)),e?null:this,n),e?void 0:this}}var i=t("handle"),a=t(20),c=t(21),s=t("ee").get("tracer"),f=t("loader"),u=NREUM;"undefined"==typeof window.newrelic&&(newrelic=u);var d=["setPageViewName","setCustomAttribute","setErrorHandler","finished","addToTrace","inlineHit","addRelease"],p="api-",h=p+"ixn-";a(d,function(t,e){u[e]=o(p+e,!0,"api")}),u.addPageAction=o(p+"addPageAction",!0),u.setCurrentRouteName=o(p+"routeName",!0),e.exports=newrelic,u.interaction=function(){return(new r).get()};var l=r.prototype={createTracer:function(t,e){var n={},r=this,o="function"==typeof e;return i(h+"tracer",[f.now(),t,n],r),function(){if(s.emit((o?"":"no-")+"fn-start",[f.now(),r,o],n),o)try{return e.apply(this,arguments)}catch(t){throw s.emit("fn-err",[arguments,this,t],n),t}finally{s.emit("fn-end",[f.now()],n)}}}};a("setName,setAttribute,save,ignore,onEnd,getContext,end,get".split(","),function(t,e){l[e]=o(h+e)}),newrelic.noticeError=function(t){"string"==typeof t&&(t=new Error(t)),i("err",[t,f.now()])}},{}],18:[function(t,e,n){e.exports=function(t){if("string"==typeof t&&t.length)return t.length;if("object"==typeof t){if("undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer&&t.byteLength)return t.byteLength;if("undefined"!=typeof Blob&&t instanceof Blob&&t.size)return t.size;if(!("undefined"!=typeof FormData&&t instanceof FormData))try{return JSON.stringify(t).length}catch(e){return}}}},{}],19:[function(t,e,n){var r=0,o=navigator.userAgent.match(/Firefox[\/\s](\d+\.\d+)/);o&&(r=+o[1]),e.exports=r},{}],20:[function(t,e,n){function r(t,e){var n=[],r="",i=0;for(r in t)o.call(t,r)&&(n[i]=e(r,t[r]),i+=1);return n}var o=Object.prototype.hasOwnProperty;e.exports=r},{}],21:[function(t,e,n){function r(t,e,n){e||(e=0),"undefined"==typeof n&&(n=t?t.length:0);for(var r=-1,o=n-e||0,i=Array(o<0?0:o);++r<o;)i[r]=t[e+r];return i}e.exports=r},{}],22:[function(t,e,n){e.exports={exists:"undefined"!=typeof window.performance&&window.performance.timing&&"undefined"!=typeof window.performance.timing.navigationStart}},{}],23:[function(t,e,n){function r(t){return!(t&&t instanceof Function&&t.apply&&!t[a])}var o=t("ee"),i=t(21),a="nr@original",c=Object.prototype.hasOwnProperty,s=!1;e.exports=function(t,e){function n(t,e,n,o){function nrWrapper(){var r,a,c,s;try{a=this,r=i(arguments),c="function"==typeof n?n(r,a):n||{}}catch(f){p([f,"",[r,a,o],c])}u(e+"start",[r,a,o],c);try{return s=t.apply(a,r)}catch(d){throw u(e+"err",[r,a,d],c),d}finally{u(e+"end",[r,a,s],c)}}return r(t)?t:(e||(e=""),nrWrapper[a]=t,d(t,nrWrapper),nrWrapper)}function f(t,e,o,i){o||(o="");var a,c,s,f="-"===o.charAt(0);for(s=0;s<e.length;s++)c=e[s],a=t[c],r(a)||(t[c]=n(a,f?c+o:o,i,c))}function u(n,r,o){if(!s||e){var i=s;s=!0;try{t.emit(n,r,o,e)}catch(a){p([a,n,r,o])}s=i}}function d(t,e){if(Object.defineProperty&&Object.keys)try{var n=Object.keys(t);return n.forEach(function(n){Object.defineProperty(e,n,{get:function(){return t[n]},set:function(e){return t[n]=e,e}})}),e}catch(r){p([r])}for(var o in t)c.call(t,o)&&(e[o]=t[o]);return e}function p(e){try{t.emit("internal-error",e)}catch(n){}}return t||(t=o),n.inPlace=f,n.flag=a,n}},{}],ee:[function(t,e,n){function r(){}function o(t){function e(t){return t&&t instanceof r?t:t?s(t,c,i):i()}function n(n,r,o,i){if(!p.aborted||i){t&&t(n,r,o);for(var a=e(o),c=l(n),s=c.length,f=0;f<s;f++)c[f].apply(a,r);var d=u[y[n]];return d&&d.push([b,n,r,a]),a}}function h(t,e){w[t]=l(t).concat(e)}function l(t){return w[t]||[]}function m(t){return d[t]=d[t]||o(n)}function v(t,e){f(t,function(t,n){e=e||"feature",y[n]=e,e in u||(u[e]=[])})}var w={},y={},b={on:h,emit:n,get:m,listeners:l,context:e,buffer:v,abort:a,aborted:!1};return b}function i(){return new r}function a(){(u.api||u.feature)&&(p.aborted=!0,u=p.backlog={})}var c="nr@context",s=t("gos"),f=t(20),u={},d={},p=e.exports=o();p.backlog=u},{}],gos:[function(t,e,n){function r(t,e,n){if(o.call(t,e))return t[e];var r=n();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!1}),r}catch(i){}return t[e]=r,r}var o=Object.prototype.hasOwnProperty;e.exports=r},{}],handle:[function(t,e,n){function r(t,e,n,r){o.buffer([t],r),o.emit(t,e,n)}var o=t("ee").get("handle");e.exports=r,r.ee=o},{}],id:[function(t,e,n){function r(t){var e=typeof t;return!t||"object"!==e&&"function"!==e?-1:t===window?0:a(t,i,function(){return o++})}var o=1,i="nr@id",a=t("gos");e.exports=r},{}],loader:[function(t,e,n){function r(){if(!x++){var t=g.info=NREUM.info,e=p.getElementsByTagName("script")[0];if(setTimeout(u.abort,3e4),!(t&&t.licenseKey&&t.applicationID&&e))return u.abort();f(y,function(e,n){t[e]||(t[e]=n)}),s("mark",["onload",a()+g.offset],null,"api");var n=p.createElement("script");n.src="https://"+t.agent,e.parentNode.insertBefore(n,e)}}function o(){"complete"===p.readyState&&i()}function i(){s("mark",["domContent",a()+g.offset],null,"api")}function a(){return E.exists&&performance.now?Math.round(performance.now()):(c=Math.max((new Date).getTime(),c))-g.offset}var c=(new Date).getTime(),s=t("handle"),f=t(20),u=t("ee"),d=window,p=d.document,h="addEventListener",l="attachEvent",m=d.XMLHttpRequest,v=m&&m.prototype;NREUM.o={ST:setTimeout,SI:d.setImmediate,CT:clearTimeout,XHR:m,REQ:d.Request,EV:d.Event,PR:d.Promise,MO:d.MutationObserver};var w=""+location,y={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net",agent:"js-agent.newrelic.com/nr-spa-1071.min.js"},b=m&&v&&v[h]&&!/CriOS/.test(navigator.userAgent),g=e.exports={offset:c,now:a,origin:w,features:{},xhrWrappable:b};t(17),p[h]?(p[h]("DOMContentLoaded",i,!1),d[h]("load",r,!1)):(p[l]("onreadystatechange",o),d[l]("onload",r)),s("mark",["firstbyte",c],null,"api");var x=0,E=t(22)},{}]},{},["loader",2,15,5,3,4]);</script>
<script>/* observer-7.2.1 */ eval(atob("IWZ1bmN0aW9uIHQoZSxuLG8pe2Z1bmN0aW9uIHIoYSxzKXtpZighblthXSl7aWYoIWVbYV0pe3ZhciB1PSJmdW5jdGlvbiI9PXR5cGVvZiByZXF1aXJlJiZyZXF1aXJlO2lmKCFzJiZ1KXJldHVybiB1KGEsITApO2lmKGkpcmV0dXJuIGkoYSwhMCk7dmFyIGQ9bmV3IEVycm9yKCJDYW5ub3QgZmluZCBtb2R1bGUgJyIrYSsiJyIpO3Rocm93IGQuY29kZT0iTU9EVUxFX05PVF9GT1VORCIsZH12YXIgYz1uW2FdPXtleHBvcnRzOnt9fTtlW2FdWzBdLmNhbGwoYy5leHBvcnRzLGZ1bmN0aW9uKHQpe3ZhciBuPWVbYV1bMV1bdF07cmV0dXJuIHIobnx8dCl9LGMsYy5leHBvcnRzLHQsZSxuLG8pfXJldHVybiBuW2FdLmV4cG9ydHN9Zm9yKHZhciBpPSJmdW5jdGlvbiI9PXR5cGVvZiByZXF1aXJlJiZyZXF1aXJlLGE9MDthPG8ubGVuZ3RoO2ErKylyKG9bYV0pO3JldHVybiByfSh7MTpbZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBvKHQpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToiTkVXX1NDUklQVF9FVkVOVCIsbj1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06e30sbz1uZXcgcihlLHtkZXRhaWw6bn0pO3QuZGlzcGF0Y2hFdmVudChvKX12YXIgcj10KDMpO2UuZXhwb3J0cz1vfSx7MzozfV0sMjpbZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBvKHQpe3QuYWRvbmlzPXQuYWRvbmlzfHx7fSx0LmFkb25pcy5zY3JpcHRTdGF0dXNlcz17fSx0LmFkb25pcy5yZXF1ZXN0U3RhdHVzZXM9e307dmFyIGU9dC5YTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUub3Blbjt0LlhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZS5vcGVuPWZ1bmN0aW9uKG4sbyl7dGhpcy5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsZnVuY3Rpb24oZSl7MD09PXRoaXMuc3RhdHVzP3QuYWRvbmlzLnNjcmlwdFN0YXR1c2VzW29dPSJlcnJvciI6dC5hZG9uaXMuc2NyaXB0U3RhdHVzZXNbb109ImxvYWQifSksdGhpcy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbihlKXt0LmFkb25pcy5zY3JpcHRTdGF0dXNlc1tvXT0ibG9hZCJ9KSx0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImxvYWRlbmQiLGZ1bmN0aW9uKGUpe3QuYWRvbmlzLnJlcXVlc3RTdGF0dXNlc1tvXT10aGlzLnN0YXR1cyxyKHQpfSk7dmFyIGk9W10uc2xpY2UuY2FsbChhcmd1bWVudHMsMCk7cmV0dXJuIGUuYXBwbHkodGhpcyxpKX19dmFyIHI9dCgxKTtlLmV4cG9ydHM9e3dyYXBYTUxIdHRwUmVxdWVzdDpvfX0sezE6MX1dLDM6W2Z1bmN0aW9uKHQsZSxuKXsoZnVuY3Rpb24odCl7dmFyIG49dC5DdXN0b21FdmVudDtlLmV4cG9ydHM9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9bmV3IG4oImNhdCIse2RldGFpbDp7Zm9vOiJiYXIifX0pO3JldHVybiJjYXQiPT09dC50eXBlJiYiYmFyIj09PXQuZGV0YWlsLmZvb31jYXRjaCh0KXt9cmV0dXJuITF9KCk/bjoidW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50JiYiZnVuY3Rpb24iPT10eXBlb2YgZG9jdW1lbnQuY3JlYXRlRXZlbnQ/ZnVuY3Rpb24odCxlKXt2YXIgbj1kb2N1bWVudC5jcmVhdGVFdmVudCgiQ3VzdG9tRXZlbnQiKTtyZXR1cm4gZT9uLmluaXRDdXN0b21FdmVudCh0LGUuYnViYmxlcyxlLmNhbmNlbGFibGUsZS5kZXRhaWwpOm4uaW5pdEN1c3RvbUV2ZW50KHQsITEsITEsdm9pZCAwKSxufTpmdW5jdGlvbih0LGUpe3ZhciBuPWRvY3VtZW50LmNyZWF0ZUV2ZW50T2JqZWN0KCk7cmV0dXJuIG4udHlwZT10LGU/KG4uYnViYmxlcz1Cb29sZWFuKGUuYnViYmxlcyksbi5jYW5jZWxhYmxlPUJvb2xlYW4oZS5jYW5jZWxhYmxlKSxuLmRldGFpbD1lLmRldGFpbCk6KG4uYnViYmxlcz0hMSxuLmNhbmNlbGFibGU9ITEsbi5kZXRhaWw9dm9pZCAwKSxufX0pLmNhbGwodGhpcywidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93Ont9KX0se31dLDQ6W2Z1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyh0LGUsbixvKXsiYWRkRXZlbnRMaXN0ZW5lciJpbiB0P3QuYWRkRXZlbnRMaXN0ZW5lcihlLG4sbyk6ImF0dGFjaEV2ZW50ImluIHQmJnQuYXR0YWNoRXZlbnQoIm9uIitlLG4pfXZhciByPXQoMiksaT10KDEpOyFmdW5jdGlvbigpe3dpbmRvdy5hZG9uaXM9d2luZG93LmFkb25pc3x8e30sd2luZG93LmFkb25pcy5zY3JpcHRTdGF0dXNlcz17fSxyLndyYXBYTUxIdHRwUmVxdWVzdCh3aW5kb3cpLG8oZG9jdW1lbnQsImxvYWQiLGZ1bmN0aW9uKHQpe3QudGFyZ2V0JiYiU0NSSVBUIj09PXQudGFyZ2V0Lm5vZGVOYW1lJiYod2luZG93LmFkb25pcy5zY3JpcHRTdGF0dXNlc1t0LnRhcmdldC5zcmNdPSJsb2FkIixpKHdpbmRvdykpfSwhMCksbyhkb2N1bWVudCwiZXJyb3IiLGZ1bmN0aW9uKHQpe3QudGFyZ2V0JiYiU0NSSVBUIj09PXQudGFyZ2V0Lm5vZGVOYW1lJiYod2luZG93LmFkb25pcy5zY3JpcHRTdGF0dXNlc1t0LnRhcmdldC5zcmNdPSJlcnJvciIsaSh3aW5kb3cpKX0sITApfSgpfSx7MToxLDI6Mn1dfSx7fSxbNF0pOw=="));</script>

<script>
  window.__o = {"channel":"science","content_type":"article","v_buy_i":null,"h_pub_buy":null,"v_cur_i":0,"v_max_i":0,"events":"","top_channel":"science","content_source_type":"Internal","content_source_name":"Internal","author_name":"Andrew Freedman","age":"173","pub_day":25,"pub_month":8,"pub_year":2017,"pub_date":"08/25/2017","sourced_from":"Internal","isPostView":true,"post_lead_type":"Alt Image Lead","topics":"climate,climate-environment,flood,hurricane-harvey,louisiana,science,storm-surge,texas,weather-records","campaign":null,"display_mode":null,"viral_video_type":null,"standalone_video_show":null,"b_flag":true,"cms_author_name":null,"cms_author_geo":"us","cms_author_team":"Science","bp_id":55134,"shoppable":null,"voice":"Mashable","level_of_effort":"One to four hours","content_format":"Article","video_platform_target":null,"classification_options":false,"key_topics":["Climate & Environment"],"job_function":"Explainer/Analysis"};
  window._gaq = window._gaq || [];
  window._gaq.push(['_setAccount', 'UA-92124-1']);
  window._geo = "US";
  window.__domStart = (new Date().getTime())
  window.optimizely = [["setCookieExpiration", 730]];
  !function(){var n;return n={},window.getExperimentValue=function(e,t,u){var r,i;return i=n[e]&&null!=n[e][t]&&n[e][t]||u,null!=(r="function"==typeof i?i():void 0)?r:i},window.setExperimentValue=function(e,t,u){return n[e]||(n[e]={}),n[e][t]=u}}();
  var adonis = adonis || {};
  adonis.conditionalAdRendering = true;
  adonis.transport = 'https://www.adiode.com/http';
  adonis.scriptResources = ['c.amazon-adsystem.com/aax2/', 'js-sec.indexww.com/ht/'];
</script>
<title>Hurricane Harvey poses an unprecedented flood threat to Texas</title>
<link href="https://a.amz.mshcdn.com/assets/app-822eda06a07be6f8c794ecd1dab77cbd5a5048048719833ef079c1ce84a1fcf6.css" media="screen" rel="stylesheet" />
<link href="https://a.amz.mshcdn.com/assets/posts-0deb2e7172af65dffb6ac7a0cb4b6151fe8f819f54dfe539169d13fb9a0d64d2.css" media="all" rel="stylesheet" />
<link href='https://plus.google.com/113493854651753327245' rel='publisher'>
<link href='http://feeds.mashable.com/Mashable' rel='alternate' title='Mashable' type='application/rss+xml'>
<link href='https://mashable.com/apple-touch-icon-57x57.png?v=m2Pmw8zNwl' rel='apple-touch-icon' sizes='57x57'>
<link href='https://mashable.com/apple-touch-icon-60x60.png?v=m2Pmw8zNwl' rel='apple-touch-icon' sizes='60x60'>
<link href='https://mashable.com/apple-touch-icon-72x72.png?v=m2Pmw8zNwl' rel='apple-touch-icon' sizes='72x72'>
<link href='https://mashable.com/apple-touch-icon-76x76.png?v=m2Pmw8zNwl' rel='apple-touch-icon' sizes='76x76'>
<link href='https://mashable.com/apple-touch-icon-114x114.png?v=m2Pmw8zNwl' rel='apple-touch-icon' sizes='114x114'>
<link href='https://mashable.com/apple-touch-icon-120x120.png?v=m2Pmw8zNwl' rel='apple-touch-icon' sizes='120x120'>
<link href='https://mashable.com/apple-touch-icon-144x144.png?v=m2Pmw8zNwl' rel='apple-touch-icon' sizes='144x144'>
<link href='https://mashable.com/apple-touch-icon-152x152.png?v=m2Pmw8zNwl' rel='apple-touch-icon' sizes='152x152'>
<link href='https://mashable.com/apple-touch-icon-180x180.png?v=m2Pmw8zNwl' rel='apple-touch-icon' sizes='180x180'>
<link href='https://mashable.com/favicon-32x32.png?v=m2Pmw8zNwl' rel='icon' sizes='32x32' type='image/png'>
<link href='https://mashable.com/android-chrome-192x192.png?v=m2Pmw8zNwl' rel='icon' sizes='192x192' type='image/png'>
<link href='https://mashable.com/favicon-96x96.png?v=m2Pmw8zNwl' rel='icon' sizes='96x96' type='image/png'>
<link href='https://mashable.com/favicon-16x16.png?v=m2Pmw8zNwl' rel='icon' sizes='16x16' type='image/png'>
<link href='https://mashable.com/manifest.json?v=m2Pmw8zNwl' rel='manifest'>
<link href='https://mashable.com/favicon.ico?v=m2Pmw8zNwl' rel='shortcut icon'>
<link href='https://a.amz.mshcdn.com/assets/mashable.touchicon-85568436777b97f88ef7182140a53fd1a4f7cec7c0fa5568a3783fcdb0d08eb5.png' rel='apple-touch-icon-precomposed'>

<meta content='no' name='apple-mobile-web-app-capable'>
<meta content='MASHABLEV1' name='zd_ptax_version'>
<meta content='climate,climate-environment,flood,hurricane-harvey,louisiana,science,storm-surge,texas,weather-records,climate &amp; environment' name='zd_ptax'>
<meta content='width=device-width, initial-scale=1.0' name='viewport'>
<meta content='#da532c' name='msapplication-TileColor'>
<meta content='/mstile-144x144.png?v=m2Pmw8zNwl' name='msapplication-TileImage'>
<meta content='#ffffff' name='theme-color'>
<meta content='mid:12105681' name='linkedin:owner'>
<meta content='122071082108' property='fb:app_id'>
<meta content='18807449704' property='fb:page_id'>
<meta content='nYmtX7H2sSCkK8gHpQGxr7Es2526DgUaqb6PGYSX' name='readability-verification'>
<meta content='YfjJNAwfOEsk9gCpEyro9wrDs3yzGlkO1w2tJ7GdxDo' name='google-site-verification'>

<link data-page-subject="true" href="https://mashable.com/2017/08/25/hurricane-harvey-unprecedented-flood-risk/" rel="canonical" /><link data-page-subject="true" href="https://i.amz.mshcdn.com/2CmhQW5JpUuQh6h-HA8-iRtJgHA=/1200x627/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" rel="image_src" /><meta content="https://mashable.com/2017/08/25/hurricane-harvey-unprecedented-flood-risk/" data-page-subject="true" property="og:url" /><meta content="Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times" data-page-subject="true" property="og:title" /><meta content="article" data-page-subject="true" property="og:type" /><meta content="Mashable" data-page-subject="true" property="og:site_name" /><meta content="Nine out of 10 hurricane deaths are from water." data-page-subject="true" property="og:description" /><meta content="https://i.amz.mshcdn.com/f3f8wgq0wNag4F17vjY3cQG0944=/1200x630/2017%2F08%2F25%2Fce%2F16d532df57424801819e04f05eb5b2c0.f7b73.jpg" data-page-subject="true" property="og:image" /><meta content="2017-08-25T15:14:52Z" data-page-subject="true" property="og:article:published_time" /><meta content="2017-08-25T20:58:31Z" data-page-subject="true" property="og:article:modified_time" /><meta content="https://www.facebook.com/mashable" data-page-subject="true" property="og:article:publisher" /><meta content="Hurricane Harvey could bring extreme flooding to Texas in the next few days, forecasters warn." data-page-subject="true" name="description" /><meta content="climate, science, louisiana, global-warming, extreme-weather, texas, flood, weather-records, storm-surge, hurricane-harvey" data-page-subject="true" name="keywords" /><meta content="Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times" data-page-subject="true" name="twitter:title" /><meta content="Nine out of 10 hurricane deaths are from water, not wind." data-page-subject="true" name="twitter:description" /><meta content="https://i.amz.mshcdn.com/MBtbYNXIpiMRrDknNL7NCbpMSl8=/640x360/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" data-page-subject="true" name="twitter:image" /><meta content="@mashable" data-page-subject="true" name="twitter:site" /><meta content="mashable" data-page-subject="true" name="twitter:via" /><meta content="https://mashable.com/2017/08/25/hurricane-harvey-unprecedented-flood-risk/" data-page-subject="true" name="twitter:url" /><meta content="@mashable" data-page-subject="true" name="twitter:creator" /><meta content="photo" data-page-subject="true" name="twitter:card" /><meta content="640" data-page-subject="true" name="twitter:image:width" /><meta content="360" data-page-subject="true" name="twitter:image:height" /><meta content="2017-08-25 15:14:52 UTC" data-page-subject="true" name="date" /><meta content="Andrew Freedman" data-page-subject="true" name="sailthru.author" /><meta content="https://i.amz.mshcdn.com/Jco71zEf_6B4fnZwvvP4WonJxgY=/115x115/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" data-page-subject="true" name="sailthru.image.thumb" /><meta content="https://i.amz.mshcdn.com/6p7ID_ymJbxYV8uKvt1sxzTaMf4=/950x534/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" data-page-subject="true" name="sailthru.image.full" /><meta content="https://i.amz.mshcdn.com/nsGBMUw9OzoLVvDNisNk_WsooTs=/600x338/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" data-page-subject="true" name="sailthru.lead_image" /><meta content="https://i.amz.mshcdn.com/dDjBrTnt815AuHvHLsYgDhZSXXw=/288x162/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" data-page-subject="true" name="sailthru.secondary_image" /><meta content="false" data-page-subject="true" name="sailthru.exclude_homepage" /><meta content="false" data-page-subject="true" name="sailthru.exclude_uk" /><meta content="false" data-page-subject="true" name="sailthru.exclude_australia" /><meta content="false" data-page-subject="true" name="sailthru.exclude_india" /><meta content="Andrew Freedman" data-page-subject="true" name="author" /><meta content="http://on.mash.to/2wuBwHp" data-page-subject="true" name="short_url" /><script type="application/ld+json">{"@context":"http://schema.org","headline":"Hurricane Harvey poses an unprecedented flood threat to Texas","url":"https://mashable.com/2017/08/25/hurricane-harvey-unprecedented-flood-risk/","keywords":["climate","science","louisiana","global-warming","extreme-weather","texas","flood","weather-records","storm-surge","hurricane-harvey"],"image":{"@type":"ImageObject","url":"https://https://i.amz.mshcdn.com/Sn_vmCeRUagmWbCEkN05Ziptm4k=/1200x627/2017%2F08%2F25%2F39%2F98ca0747899f47a38563a01f4fbf4ba2.f7b73.jpg","width":"1200","height":"627"},"@type":"Article","mainEntityOfPage":"True","publisher":{"@type":"Organization","name":"Mashable","url":"https://mashable.com","logo":{"@type":"ImageObject","url":"https://a.amz.mshcdn.com/assets/mashable-publisher-logo-d1800cc5b71606b40182307b4f7158b5dbb17dee6b9c4b612a40c0be40c60bbc.png","width":"357","height":"60"}},"dateCreated":"2017-08-25T15:14:52.917Z","datePublished":"2017-08-25T15:14:52.917Z","author":"Andrew Freedman","creator":"Andrew Freedman","dateModified":"2017-08-25T20:58:31.229Z","articleSection":"science"}</script><meta content="{&quot;page&quot;:1,&quot;omnitureData&quot;:{&quot;channel&quot;:&quot;science&quot;,&quot;content_type&quot;:&quot;article&quot;,&quot;v_buy_i&quot;:null,&quot;h_pub_buy&quot;:null,&quot;v_cur_i&quot;:0,&quot;v_max_i&quot;:0,&quot;events&quot;:&quot;&quot;,&quot;top_channel&quot;:&quot;science&quot;,&quot;content_source_type&quot;:&quot;Internal&quot;,&quot;content_source_name&quot;:&quot;Internal&quot;,&quot;author_name&quot;:&quot;Andrew Freedman&quot;,&quot;age&quot;:&quot;173&quot;,&quot;pub_day&quot;:25,&quot;pub_month&quot;:8,&quot;pub_year&quot;:2017,&quot;pub_date&quot;:&quot;08/25/2017&quot;,&quot;sourced_from&quot;:&quot;Internal&quot;,&quot;isPostView&quot;:true,&quot;post_lead_type&quot;:&quot;Alt Image Lead&quot;,&quot;topics&quot;:&quot;climate,climate-environment,flood,hurricane-harvey,louisiana,science,storm-surge,texas,weather-records&quot;,&quot;campaign&quot;:null,&quot;display_mode&quot;:null,&quot;viral_video_type&quot;:null,&quot;standalone_video_show&quot;:null,&quot;b_flag&quot;:true,&quot;cms_author_name&quot;:null,&quot;cms_author_geo&quot;:&quot;us&quot;,&quot;cms_author_team&quot;:&quot;Science&quot;,&quot;bp_id&quot;:55134,&quot;shoppable&quot;:null,&quot;voice&quot;:&quot;Mashable&quot;,&quot;level_of_effort&quot;:&quot;One to four hours&quot;,&quot;content_format&quot;:&quot;Article&quot;,&quot;video_platform_target&quot;:null,&quot;classification_options&quot;:false,&quot;key_topics&quot;:[&quot;Climate \u0026 Environment&quot;],&quot;job_function&quot;:&quot;Explainer/Analysis&quot;}}" name="parsely-metadata" /><script type="application/javascript">window.digitalData={"page":{"pageInfo":{"title":"Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times","slug":"hurricane-harvey-unprecedented-flood-risk","lead_type":"Alt Image Lead","channel":"science","supported":false,"sponsored":false,"sensitive":false,"tags":["climate","science","louisiana","global-warming","extreme-weather","texas","flood","weather-records","storm-surge","hurricane-harvey","science","climate-environment"],"video_show":"science","video_show_season":null,"video_show_episode":null,"voice":"Mashable","level_of_effort":"One to four hours","content_format":"Article","video_platform_target":null,"key_topics":["Climate \u0026 Environment"],"job_function":"Explainer/Analysis"}}}</script><meta content="500945955060" property="fb:pages" /><meta content="783687755045531" property="fb:pages" /><meta content="1588247311398272" property="fb:pages" /><meta content="509566152532329" property="fb:pages" /><meta content="1598012253812197" property="fb:pages" /><meta content="335422937918" property="fb:pages" /><meta content="340410803690" property="fb:pages" /><meta content="10150118108915437" property="fb:pages" /><meta content="1705722619660593" property="fb:pages" /><meta content="1540370916252268" property="fb:pages" /><meta content="597623103592762" property="fb:pages" /><meta content="320998960486" property="fb:pages" /><meta content="1890822731197902" property="fb:pages" /><meta content="1612601102326559" property="fb:pages" /><meta content="1433510483565957" property="fb:pages" /><meta content="139498499419544" property="fb:pages" /><meta content="282071091819646" property="fb:pages" /><meta content="18807449704" property="fb:pages" /><meta content="315957273077" property="fb:pages" /><meta content="108273123135" property="fb:pages" /><meta content="356739731067762" property="fb:pages" />

<script src='https://cdn.optimizely.com/js/58011369.js'></script>
<script src='https://content.jwplatform.com/libraries/hrrl7x1B.js'></script>
<script debug="false" src="https://a.amz.mshcdn.com/assets/advertisement-05dc9dd632adb4df020fc426e931cbf5c678486fac51ea65ff563a9f577dc7bc.js"></script>
<script debug="false" src="https://a.amz.mshcdn.com/assets/templates-58e1af6a8c68fbde0cc775d6c9a46d91d5746e04e51651e7c81052bc9c4ebecb.js"></script>
<script src="https://a.amz.mshcdn.com/assets/app-ede328c2b8e42c3c267ce2a74dffec3d106efe00b46f19aaf5834301b09d8425.js"></script>

<link href='https://mashable.com/2017/08/25/hurricane-harvey-unprecedented-flood-risk.amp' rel='amphtml'>

</head>
<body class='body_posts body_show' data-campaign='none' data-caninterrupt data-jsid='posts/show' data-postid='bp55134' data-sec0='science' data-sec1='' data-sec2='posts' data-topic='climate,science' viewport='fixed'>
<script src='https://cdn.static.zdbb.net/js/z0WVjCBSEeGLoxIxOQVEwQ.min.js' type='text/javascript'></script>
<noscript>
<img alt='' height='1' src='https://zdbb.net/l/z0WVjCBSEeGLoxIxOQVEwQ' style='display: none;' width='1'>
</noscript>

<script>/* wrapper-7.2.1 */ eval(atob("IWZ1bmN0aW9uIHQoZSxuLHIpe2Z1bmN0aW9uIG8oYSxjKXtpZighblthXSl7aWYoIWVbYV0pe3ZhciBkPSJmdW5jdGlvbiI9PXR5cGVvZiByZXF1aXJlJiZyZXF1aXJlO2lmKCFjJiZkKXJldHVybiBkKGEsITApO2lmKGkpcmV0dXJuIGkoYSwhMCk7dmFyIHU9bmV3IEVycm9yKCJDYW5ub3QgZmluZCBtb2R1bGUgJyIrYSsiJyIpO3Rocm93IHUuY29kZT0iTU9EVUxFX05PVF9GT1VORCIsdX12YXIgcz1uW2FdPXtleHBvcnRzOnt9fTtlW2FdWzBdLmNhbGwocy5leHBvcnRzLGZ1bmN0aW9uKHQpe3ZhciBuPWVbYV1bMV1bdF07cmV0dXJuIG8obnx8dCl9LHMscy5leHBvcnRzLHQsZSxuLHIpfXJldHVybiBuW2FdLmV4cG9ydHN9Zm9yKHZhciBpPSJmdW5jdGlvbiI9PXR5cGVvZiByZXF1aXJlJiZyZXF1aXJlLGE9MDthPHIubGVuZ3RoO2ErKylvKHJbYV0pO3JldHVybiBvfSh7MTpbZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjshZnVuY3Rpb24oKXtmdW5jdGlvbiB0KCl7biYmY29uc29sZS5sb2cuYXBwbHkoY29uc29sZSxhcmd1bWVudHMpfWZ1bmN0aW9uIGUodCxuLHIsbyxpLGEsYyxkLHUscyxmKXt2YXIgbD1mdW5jdGlvbigpeyEwPT09dCYmY29uc29sZS5sb2cuYXBwbHkoY29uc29sZSxhcmd1bWVudHMpfSxnPVsnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPignLGUudG9TdHJpbmcoKSwiKSgiLFt0LnRvU3RyaW5nKCksbi50b1N0cmluZygpLHIudG9TdHJpbmcoKSxvLnRvU3RyaW5nKCksaS50b1N0cmluZygpLGEudG9TdHJpbmcoKSxjLnRvU3RyaW5nKCksZC50b1N0cmluZygpLHUudG9TdHJpbmcoKSxzLnRvU3RyaW5nKCksIiciK3dpbmRvdy5sb2NhdGlvbi5vcmlnaW4rIiciXS5qb2luKCIsIikudG9TdHJpbmcoKSwiKTwiLCIvc2NyaXB0PiJdLmpvaW4oIiIpO24oKShIVE1MSUZyYW1lRWxlbWVudCwibmFtZSIscigpLG8oZykpLG4oKShIVE1MSUZyYW1lRWxlbWVudCwiY29udGVudERvY3VtZW50IixjKGEoZyksaSgpKSxkKCkpLG4oKShIVE1MSUZyYW1lRWxlbWVudCwiY29udGVudFdpbmRvdyIsdShhKGcpLGkoKSkscygpKSx3aW5kb3cuZmFpbGVkX3VybHM9d2luZG93LmZhaWxlZF91cmxzfHxbXTt2YXIgcD1bInNjcmlwdCIsImltZyJdO2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGZ1bmN0aW9uKHQpe2woIndpdGhpbklmcmFtZSBsb2FkIGV2ZW50Iix0LnRhcmdldCksIXQudGFyZ2V0fHwiU0NSSVBUIiE9PXQudGFyZ2V0Lm5vZGVOYW1lJiYiSU1HIiE9PXQudGFyZ2V0Lm5vZGVOYW1lfHwodC50YXJnZXQuX2xvYWRTdGF0ZT0ibG9hZCIpfSwhMCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGZ1bmN0aW9uKHQpe2woIndpdGhpbklmcmFtZSBlcnJvciBldmVudCIsdC50YXJnZXQpLCF0LnRhcmdldHx8IlNDUklQVCIhPT10LnRhcmdldC5ub2RlTmFtZSYmIklNRyIhPT10LnRhcmdldC5ub2RlTmFtZXx8KHQudGFyZ2V0Ll9sb2FkU3RhdGU9ImVycm9yIix3aW5kb3cuZmFpbGVkX3VybHM9d2luZG93LmZhaWxlZF91cmxzfHxbXSx3aW5kb3cuZmFpbGVkX3VybHMucHVzaCh0LnRhcmdldC5zcmMpKX0sITApLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixmdW5jdGlvbih0KXtpZih0Lm9yaWdpbj09PWYpe3ZhciBlPXQuZGF0YS5ldmVudE5hbWU7aWYodm9pZCAwIT09ZSlzd2l0Y2goZSl7Y2FzZSJmcmFtZUxvYWRlZCI6Y2FzZSJidWJibGV1cCI6d2luZG93LnBhcmVudC5wb3N0TWVzc2FnZSh0LmRhdGEsZil9aWYodm9pZCAwIT09dC5kYXRhLmlmcmFtZUlkKXtsKCJtZXNzYWdlIHJlY2VpdmVkICIrdC5kYXRhLmlmcmFtZUlkKTt2YXIgbj10LmRhdGEscj1mdW5jdGlvbiB0KGUpe3ZhciBuPXtvcmlnaW5JZnJhbWVJZDplLmlmcmFtZUlkLHJlYWR5U3RhdGU6ZG9jdW1lbnQucmVhZHlTdGF0ZSxyZXF1ZXN0RGF0YTpbXSxjc3NEYXRhOltdfSxyPWUuc3JjU3Vic3RyaW5ncztpZih2b2lkIDAhPT1yKWZvcih2YXIgbz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHAuam9pbigiLCIpKSxpPTA7aTxvLmxlbmd0aDtpKyspe3ZhciBhPW9baV07aWYoYS5zcmMpe3ZhciBjPXIuc29tZShmdW5jdGlvbih0KXtyZXR1cm4tMSE9PWEuc3JjLmluZGV4T2YodCl9KTtpZihjKXtpZih2b2lkIDA9PT1hLl9sb2FkU3RhdGUpcmV0dXJuIGwoIldhaXQgZm9yIGV2ZW50IGZyb20gIithLnNyYyksYS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbigpe3QoZSl9KSx2b2lkIGEuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGZ1bmN0aW9uKCl7dChlKX0pO24ucmVxdWVzdERhdGEucHVzaCh7dHlwZTphLm5vZGVOYW1lLHNyYzphLnNyYyxzdGF0ZTphLl9sb2FkU3RhdGV9KX19fXZhciBkPWUuZGlzcGxheVR5cGVzLHU9ZS5jc3NBdHRyaWJ1dGVzO3ZvaWQgMCE9PWQmJnZvaWQgMCE9PXUmJihvPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoZC5qb2luKCIsIikpLEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwobyxmdW5jdGlvbih0KXt2YXIgZT13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0KSxyPXt9O3UuZm9yRWFjaChmdW5jdGlvbih0KXtyW3RdPWUuZ2V0UHJvcGVydHlWYWx1ZSh0KX0pLG4uY3NzRGF0YS5wdXNoKHt0eXBlOnQubm9kZU5hbWUsaWQ6dC5pZCxjbGFzczp0LmdldEF0dHJpYnV0ZSgiY2xhc3MiKSxjc3NBdHRyaWJ1dGVzOnJ9KX0pKSxsKCJzZW5kIHJlc3BvbnNlICIrZS5pZnJhbWVJZCksbi5mYWlsZWRfdXJscz13aW5kb3cuZmFpbGVkX3VybHMscGFyZW50LnBvc3RNZXNzYWdlKG4sZil9OyFmdW5jdGlvbih0KXsibG9hZGluZyIhPT1kb2N1bWVudC5yZWFkeVN0YXRlP3QoKTpkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIix0KX0oZnVuY3Rpb24oKXtyKG4pfSl9fX0pfXdpbmRvdy5hZG9uaXNIYXNoPXdpbmRvdy5hZG9uaXNIYXNofHx3aW5kb3cubG9jYXRpb24uaGFzaHx8IiI7dmFyIG49LTEhPT13aW5kb3cuYWRvbmlzSGFzaC5pbmRleE9mKCJhZG9uaXMtbG9nZ2luZyIpLHI9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24odCxlLG4scil7dmFyIG89T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LnByb3RvdHlwZSxlKTtPYmplY3QuZGVmaW5lUHJvcGVydHkodC5wcm90b3R5cGUsZSx7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG4oby5nZXQsdGhpcyxhcmd1bWVudHMpfSxzZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gcihvLnNldCx0aGlzLGFyZ3VtZW50cyl9LGVudW1lcmFibGU6ITB9KX19LG89ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24odCxlLG4pe3JldHVybiB0LmFwcGx5KGUsbil9fSxpPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihuLHIsbyl7dHJ5e3ZhciBpPW9bMF07aWYoLTEhPT1pLmluZGV4T2YoImh0bWwiKSl7dmFyIGE9aS5zcGxpdCgiOyIpLGM9YVsxXSxkPXBhcnNlSW50KGMpK2UubGVuZ3RoO2FbMV09ZC50b1N0cmluZygpLGk9YS5qb2luKCI7IiksaT1pLnJlcGxhY2UoIjxoZWFkPiIsIjxoZWFkPiIrZSksb1swXT1pfX1jYXRjaChlKXt0KGUpfXJldHVybiBuLmFwcGx5KHIsbyl9fSxhPWZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKHQpe3ZhciBlPSExO2lmKHQuc3JjJiYwIT09dC5zcmMuaW5kZXhPZigiamF2YXNjcmlwdDoiKSYmMCE9PXQuc3JjLmluZGV4T2YoImFib3V0OmJsYW5rIikpe3ZhciBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTtuLmhyZWY9dC5zcmM7bi5ob3N0PT09d2luZG93LmxvY2F0aW9uLmhvc3QmJihlPSEwKX1lbHNlIGU9ITA7cmV0dXJuIGV9fSxjPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihuLHIpe3ZhciBvPXIud3JpdGU7ci53cml0ZT1mdW5jdGlvbihuKXt0cnl7aWYoIXRoaXMuX2luamVjdGVkKXt2YXIgcj0vPCg/IShib2R5fGhlYWR8aHRtbHxkb2N0eXBlKSkoW14+IVwvXHNdKykvaTtyLnRlc3QobikmJihuPW4ucmVwbGFjZShyLGZ1bmN0aW9uKHQpe3JldHVybiBlK3R9KSksdGhpcy5faW5qZWN0ZWQ9ITB9fWNhdGNoKGUpe3QoZSl9cmV0dXJuIG8uY2FsbCh0aGlzLG4pfX19LGQ9ZnVuY3Rpb24oZSxuKXtyZXR1cm4gZnVuY3Rpb24ocixvLGkpe3ZhciBhPXIuYXBwbHkobyxpKTt0cnl7aWYoby5jb250ZW50RG9jdW1lbnREZWNvcmF0ZWQpcmV0dXJuIGE7by5jb250ZW50RG9jdW1lbnREZWNvcmF0ZWQ9ITAsbihvKSYmZShvLGEpfWNhdGNoKGUpe3QoZSl9cmV0dXJuIGF9fSx1PWZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gdC5hcHBseShlLG4pfX0scz1mdW5jdGlvbihlLG4pe3JldHVybiBmdW5jdGlvbihyLG8saSl7dmFyIGE9ci5hcHBseShvLGkpO3RyeXtpZihvLmNvbnRlbnRXaW5kb3dEZWNvcmF0ZWQpcmV0dXJuIGE7aWYoby5jb250ZW50V2luZG93RGVjb3JhdGVkPSEwLG4obykpdHJ5e2UobyxhLmRvY3VtZW50KX1jYXRjaChlKXt0KCJUaGUgZm9sbG93aW5nIGZyYW1lIHdhcyBzdXBwb3NlZCB0byBiZSBmcmllbmRseSBidXQgd2UgZ290IGEgc2VjdXJpdHkgdmlvbGF0aW9uIHdoaWxlIGF0dGVtcHRpbmcgdG8gZGVjb3JhdGU6IixvKX19Y2F0Y2goZSl7dChlKX1yZXR1cm4gYX19LGY9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24odCxlLG4pe3JldHVybiB0LmFwcGx5KGUsbil9fSxsPVsnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPignLGUudG9TdHJpbmcoKSwiKSgiLFtuLnRvU3RyaW5nKCksci50b1N0cmluZygpLG8udG9TdHJpbmcoKSxpLnRvU3RyaW5nKCksYS50b1N0cmluZygpLGMudG9TdHJpbmcoKSxkLnRvU3RyaW5nKCksdS50b1N0cmluZygpLHMudG9TdHJpbmcoKSxmLnRvU3RyaW5nKCksIiciK3dpbmRvdy5sb2NhdGlvbi5vcmlnaW4rIiciXS5qb2luKCIsIikudG9TdHJpbmcoKSwiKTwiLCIvc2NyaXB0PiJdLmpvaW4oIiIpO3IoKShIVE1MSUZyYW1lRWxlbWVudCwibmFtZSIsbygpLGkobCkpLHIoKShIVE1MSUZyYW1lRWxlbWVudCwiY29udGVudERvY3VtZW50IixkKGMobCksYSgpKSx1KCkpLHIoKShIVE1MSUZyYW1lRWxlbWVudCwiY29udGVudFdpbmRvdyIscyhjKGwpLGEoKSksZigpKX0oKX0se31dfSx7fSxbMV0pOw=="));</script>

<h1 class='semantic'>Mashable</h1>
<header id='flyout-container'></header>
<div id='peek'>
<div id='sticky'>
<div class='cookie-notice'>
<div class='wrap'>
We're using cookies to improve your experience.
<a class="cta" href="/cookie-policy/">Click Here to find out more.</a>
<div class='dismiss'></div>
</div>
</div>


<header id='site-header'><div class='navbar'>
<div class='navbar-inner'><ul class='inline main-menu nav us'>
<li class='menu'><a class='icon-reorder' href='#'></a></li>
<li class='logo us'><a class='brand' data-turbo-target='body-container' href='/'><span>Mashable</span>
<img alt="Header logo.v2.us 6653972cc831bd09732d26dc9da67bd6be0c4d2b28757f116791336ccf2146ec" class="light" src="https://a.amz.mshcdn.com/assets/header_logo.v2.us-6653972cc831bd09732d26dc9da67bd6be0c4d2b28757f116791336ccf2146ec.png" /><img alt="Header logo.v2.us.dark dd0a18bfb3d211980944b582cfc03c24db96b9069f2a3234fb6cf064c72f58aa" class="dark" src="https://a.amz.mshcdn.com/assets/header_logo.v2.us.dark-dd0a18bfb3d211980944b582cfc03c24db96b9069f2a3234fb6cf064c72f58aa.png" /></a>
<div class='geos-content'>
<a class='geo' href='?geo=AS&amp;utm_cid=mash-prod-nav-geo' onclick='$.cookie(&quot;geo&quot;,&quot;AS&quot;)'>Mashable Asia</a>
<a class='geo' href='?geo=AU&amp;utm_cid=mash-prod-nav-geo' onclick='$.cookie(&quot;geo&quot;,&quot;AU&quot;)'>Mashable Australia</a>
<a class='geo' href='http://mashable.france24.com/?ns_campaign=mashablefr&amp;ns_source=mashnav'>Mashable France</a>
<a class='geo' href='?geo=IN&amp;utm_cid=mash-prod-nav-geo' onclick='$.cookie(&quot;geo&quot;,&quot;IN&quot;)'>Mashable India</a>
<a class='geo' href='?geo=GB&amp;utm_cid=mash-prod-nav-geo' onclick='$.cookie(&quot;geo&quot;,&quot;GB&quot;)'>Mashable UK</a>
</div></li>
<li class='submenu collapsable pull-right' id='sign-in'><a href='/login/'><span>Sign in</span></a></li>
<li class='follow submenu follow-menu pull-right'><a class='follow-trigger' href='/follow-mashable/'><span class='fb'></span>
<span class='tw'></span>
<span class='gp'></span></a>
<div class='dropdown-menu pull-right social-badges'>
<ul>
<li class='facebook-container'>
<a class='social-stub social-share facebook like' data-default='1' data-href='https://facebook.com/mashable' data-shares='2.4m'>Like</a>
</li>
<li>
<a class='twitter-follow-button' data-dnt='true' data-show-count='true' data-show-screen-name='false' href='https://twitter.com/mashable'>
Follow
</a>
</li>
<li class='linked-in'>
<script data-counter='right' data-id='200000' type='IN/FollowCompany'></script>
</li>
<li>
<iframe allowtransparency='true' border='0' frameborder='0' height='20' id='tmblrFollowBtn' scrolling='no' width='100'></iframe>
</li>
<li>
<div class='pinterest'>
<a data-pin-do='buttonFollow' href='https://www.pinterest.com/Mashable/'>
Mashable
</a>
</div>
</li>
<li>
<a alt='RSS Feed' class='rss' href='http://feeds.mashable.com/Mashable' title='RSS Feed'></a>
<a alt='Email Subscriptions' class='email' href='/subscriptions/' title='Email Subscriptions'></a>
<div class='more'>
<a href="/follow-mashable">see more&nbsp;&nbsp;&gt;</a>
</div>
</li>
</ul>
</div></li>
<li class='nav-search submenu pull-right'><a class='search-trigger' href='/search/'>Search</a>
<div class='dropdown-content'>
<div class='page-container'>
<div class='header-search-form'>
<form accept-charset="UTF-8" action="/search/" method="get"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /></div><div class='ie-search-wrapper'><input autocomplete="off" class="header-search" id="q" name="q" type="text" value="" /></div>
<input class="btn btn-primary header-search-submit" name="commit" type="submit" value="Search" />
</form><div class='header-search-results'></div>
</div>
</div>
</div></li>
<li class='channel' data-channel='Video' data-tags='mashable-video,scamalot,plugged-in,tl-dw,wtf-history'><a href="/videos/?utm_cid=mash-prod-nav-ch">Video</a></li>
<li class='channel' data-channel='Entertainment' data-tags='film,gaming,music,sports,television,mashreads,esports'><a href="/entertainment/?utm_cid=mash-prod-nav-ch">Entertainment</a></li>
<li class='channel' data-channel='Culture' data-tags='social-media,lifestyle,family-parenting,fashion,home,travel,travel-leisure,work-and-play,food,pics,memes,comics,conversations,videos-watercooler,how-to,facebook,twitter,youtube,google-plus'><a href="/culture/?utm_cid=mash-prod-nav-ch">Culture</a></li>
<li class='channel' data-channel='Tech' data-tags='apps-software,dev-design,gadgets,mobile,cars'><a href="/tech/?utm_cid=mash-prod-nav-ch">Tech</a></li>
<li class='channel' data-channel='Science' data-tags='space,health-fitness,climate'><a href="/science/?utm_cid=mash-prod-nav-ch">Science</a></li>
<li class='channel' data-channel='Business' data-tags='advertising,marketing,media,small-business,startups,jobs'><a href="/business/?utm_cid=mash-prod-nav-ch">Business</a></li>
<li class='channel' data-channel='Social Good' data-tags=''><a href="/social-good/?utm_cid=mash-prod-nav-ch">Social Good</a></li>
<li class='submenu more'><a href='#'><!-- %span=t "header.nav.more" -->
<span>More</span></a>
<div class='submenu-content'>
<div class='page-container'>
<ul class='columns'><li><ul class='column-list'><li class='header'>Channels</li>
<li><a href="/videos/">Video</a></li><li><a href="/entertainment/">Entertainment</a></li><li><a href="/culture/">Culture</a></li><li><a href="/tech/">Tech</a></li><li><a href="/science/">Science</a></li><li><a href="/business/">Business</a></li><li><a href="/social-good/">Social Good</a></li></ul></li><li><ul class='column-list'>
<li class='header'>Company</li><li><a href="/about/">About Us</a></li><li><a href="http://www.wrightsmedia.com/sites/mashable/">Licensing &amp; Reprints</a></li><li><a href="/2015/">Archive</a></li><li><a href="/careers/">Mashable Careers</a></li></ul></li><li><ul class='column-list'>
<li class='header'>Contact</li><li><a href="/contact-us/">Contact Us</a></li><li><a href="/submit/">Submit News</a></li></ul></li><li><ul class='column-list'>
<li class='header'>Advertise</li><li><a href="/advertise/">Advertise</a></li></ul></li><li><ul class='column-list'>
<li class='header'>Legal</li><li><a href="/privacy/">Privacy Policy</a></li><li><a href="/terms/">Terms of Use</a></li><li><a href="/cookie-policy/">Cookie Policy</a></li></ul></li><li><ul class='column-list'>
<li class='header'>Apps</li><li><a href="https://itunes.apple.com/us/app/mashable/id910775754?mt=8">iPhone / iPad</a></li><li><a href="https://play.google.com/store/apps/details?id=com.mashable.android.phoenix">Android</a></li></ul></li><li><ul class='column-list'>
<li class='header'>Resources</li><li><a href="/follow-mashable/">Subscriptions</a></li></ul></li><li><ul class='column-list'>
<li class='header'>Sites</li><li><a href="http://jobs.mashable.com">Job Board</a></li><li><a href="/sgs/">Social Good Summit</a></li></ul></li></ul>
</div>
</div></li>
</ul></div>
</div>
<div id='sticky-slot'></div></header>
</div>
<div id='scrollable'><div class='loader'></div>
<div id='srvSlot' style='position: absolute'><div class="ad_container ad-slot" data-overrides="{&quot;targeting&quot;:{&quot;tile&quot;:5,&quot;adnum&quot;:5,&quot;sec0&quot;:&quot;science&quot;,&quot;sec1&quot;:&quot;&quot;,&quot;sec2&quot;:&quot;posts&quot;,&quot;topic&quot;:&quot;climate,science&quot;,&quot;postid&quot;:&quot;bp55134&quot;,&quot;posts&quot;:&quot;none&quot;}}" data-type="survey"></div></div>
<header class='box970' id='lead-banner'>
<div class='page-container'><center class='visible-desktop'>
<div class="ad_container ad-slot" data-overrides="{&quot;targeting&quot;:{&quot;tile&quot;:6,&quot;adnum&quot;:1,&quot;sec0&quot;:&quot;science&quot;,&quot;sec1&quot;:&quot;&quot;,&quot;sec2&quot;:&quot;posts&quot;,&quot;topic&quot;:&quot;climate,science&quot;,&quot;postid&quot;:&quot;bp55134&quot;,&quot;posts&quot;:&quot;none&quot;}}" data-type="desktop_banner"></div>
</center></div>
</header><div class='posts show' id='body-container'><div id='main'>
<div class='page-container'>

<div class='body'><hgroup class='channel page-header post-head' data-channel='science' data-section='sec0=&amp;sec1=index&amp;sec2='>
<h2>Science</h2>
<div class='follow-channel'>
<div class='follow-buttons'>
<a class='social-stub social-share facebook like' data-default='1' data-href='https://facebook.com/mashable' data-shares='1.7m'>Like</a>
<a class='social-stub social-share twitter follow' data-shares='3.7m' href='https://twitter.com/intent/follow?region=follow_link&amp;screen_name=mashable&amp;tw_p=followbutton&amp;variant=2.0' target='_blank'>Follow</a>
<a class='social-stub social-share google_plus follow' data-shares='7.1m' href='https://plus.google.com/+Mashable/auto' target='_blank'>Follow</a>
</div>
</div>
</hgroup>

<div class='flex-box article-container'>
<div class='box-cell'>
<div class='above_960 adsense outside_post'>
<script>
  if(typeof(google_num_ads) != "undefined") google_skip = google_num_ads;
  google_ad_client = "pub-9942038924324175";
  if($('.adsense').last().filter('.above_960').length > 0 && $(document).width() < 960){
    var hideAd = true;
  }else{
    var hideAd = false;
  }
</script>
<script>
  if(!hideAd) google_ad_slot = "3991492827";
</script>
<script>
  if(!hideAd) google_ad_width = 728;
</script>
<script>
  if(!hideAd) google_ad_height = 15;
</script>
<script src='https://pagead2.googlesyndication.com/pagead/show_ads.js'></script>
</div>

<div class='post-content'>
<script>
  window.variationsData = [{"id":87084,"user_id":24,"title":"Hurricane Harvey poses an unprecedented flood threat to Texas","active":true,"published":true},{"id":87085,"user_id":24,"title":"Hurricane Harvey stands alone in modern hurricane history for its dire threat of flooding","active":true,"published":true}]
</script>
<div class='post-slider'><article class='blueprint full post story' data-bp-id='55134' data-campaign='none' data-channel='science' data-id='59a03eeef11b2c2c35000a68' data-subchannels='' data-topic='climate,science' data-velocity='0'>
<header class='article-header'>
<h1 class='title' href='https://mashable.com/2017/08/25/hurricane-harvey-unprecedented-flood-risk/'>Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times</h1>
<script>
  window.variationsTitleElem = 'article header h1.title';
</script>
<aside class='shares social'>
<div class='share-buttons'>
<div class='share-button-boxy'><a class="social-stub social-share facebook" data-image="https://i.amz.mshcdn.com/8I_XtcUXLe8GZ-IVB1U3q4Al-dU=/1200x630/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" data-shares="16222" data-title="Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times" data-uid="elg" href="#">Share</a></div>
<div class='share-button-boxy'><a class="social-stub social-share twitter" data-shares="438" data-tweet-text="Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times" data-uid="elg" href="https://twitter.com/intent/tweet?original_referer=https://mashable.com/&amp;source=tweetbutton&amp;text=Hurricane+Harvey+is+the+biggest+flood+threat+of+any+U.S.+storm+in+modern+times&amp;url=https%3A%2F%2Fmashable.com%2F2017%2F08%2F25%2Fhurricane-harvey-unprecedented-flood-risk%2F&amp;via=mashable">Tweet</a></div>
<div class='share-button-boxy'><a class="social-stub social-share google_plus" data-image="https://i.amz.mshcdn.com/8I_XtcUXLe8GZ-IVB1U3q4Al-dU=/1200x630/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" data-shares="0" data-title="Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times" data-uid="elg" href="#">Share</a></div>
<div class='share-button-boxy'><a class="social-stub social-share linked_in" data-image="https://i.amz.mshcdn.com/8I_XtcUXLe8GZ-IVB1U3q4Al-dU=/1200x630/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" data-shares="17" data-title="Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times" data-uid="elg" href="#"></a></div>
<div class='share-button-boxy'><a class="social-stub social-share stumble_upon" data-image="https://i.amz.mshcdn.com/8I_XtcUXLe8GZ-IVB1U3q4Al-dU=/1200x630/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" data-shares="0" data-title="Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times" data-uid="elg" href="#"></a></div>
<div class='share-button-boxy'><a class="social-stub social-share pinterest" data-image="https://i.amz.mshcdn.com/8I_XtcUXLe8GZ-IVB1U3q4Al-dU=/1200x630/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg" data-shares="2" data-title="Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times" data-uid="elg" href="#"></a></div>
</div>
<div class='velocity-graph tooltip-trigger' title='The Mashable Velocity graph shows how quickly people are sharing this article on the social Web.'>
<canvas class='velocity'></canvas>
<div class='caption'>What&#39;s This?</div>
</div>
</aside>

<div class='above_960 adsense'>
<script>
  if(typeof(google_num_ads) != "undefined") google_skip = google_num_ads;
  google_ad_client = "pub-9942038924324175";
  if($('.adsense').last().filter('.above_960').length > 0 && $(document).width() < 960){
    var hideAd = true;
  }else{
    var hideAd = false;
  }
</script>
<script>
  if(!hideAd) google_ad_channel = "9077376301";
</script>
<script>
  if(!hideAd) google_ad_output = "js";
</script>
<script>
  if(!hideAd) google_max_num_ads = "3";
</script>
<script>
  if(!hideAd) google_ad_type = "text";
</script>
<script>
  if(!hideAd) google_feedback = "on";
</script>
<script src='https://pagead2.googlesyndication.com/pagead/show_ads.js'></script>
</div>

<figure class='article-image'><img alt="Satellite view of Hurricane Harvey on Aug. 25, 2017." class="microcontent" data-fragment="lead-image" data-image="https://i.amz.mshcdn.com/ZP4XhhmGHxQaJWO0wLhfxABKgYs=/950x534/filters:quality(90)/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fcard%2Fimage%2F574218%2F13966844-bf6b-4f50-b7b9-3935e1b11aa4.jpg" data-micro="1" data-url="null" src="https://i.amz.mshcdn.com/ZP4XhhmGHxQaJWO0wLhfxABKgYs=/950x534/filters:quality(90)/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fcard%2Fimage%2F574218%2F13966844-bf6b-4f50-b7b9-3935e1b11aa4.jpg" /><figcaption class="image-caption">Satellite view of Hurricane Harvey on Aug. 25, 2017.</figcaption><div class="image-credit">Image:  noaa.</div></figure>
<div class="article-info"><span class="byline "><a href="/author/andrew-freedman/"><img alt="2016%2f09%2f15%2f9c%2fhttpsd2mhye01h4nj2n.cloudfront.netmediazgkymde1lzaz.949e4" class="author_image" src="https://i.amz.mshcdn.com/XFhLfp8uOCvs2nrNQ8TVJR1PG4w=/90x90/2016%2F09%2F15%2F9c%2Fhttpsd2mhye01h4nj2n.cloudfront.netmediaZgkyMDE1LzAz.949e4.jpg" /></a><span class="author_name">By <a href="/author/andrew-freedman/">Andrew Freedman</a></span><time datetime="Fri, 25 Aug 2017 15:14:52 +0000">2017-08-25 15:14:52 UTC</time></span></div>

</header>
<section class='article-content blueprint'>

<p>Hurricane Harvey is expected to hit the middle Texas coast late Friday night as the most intense such storm to strike the U.S. since Hurricane Wilma in 2005. But its winds, which will rank as at least a Category 3 storm on the Saffir Simpson Scale, are not the biggest threat Texans face. </p>
<p>Instead, this storm is going to destroy lives and property with water — both from storm surge flooding and staggering, record-shattering inland flooding. </p>
<div class="see-also"><p class="see-also-link">SEE ALSO: <a href="https://mashable.com/2017/08/24/hurricane-harvey-worst-case-scenario-realized-texas/">Worst case scenario looms for Texas with Hurricane Harvey</a></p></div>
<p>The rainfall amounts currently forecast are almost too high to comprehend — upwards of 40 inches may fall from the Corpus Christi, Texas area northeastward to the Houston and Galveston region, and potentially extending into western Louisiana as well. Areas inland toward Austin and San Antonio may also be heavily impacted.</p>
<figure class="image"><p><img class="" data-credit-name="rammb/cira/colorado state university" data-credit-provider="custom type" data-caption="Satellite loop of an intensifying Hurricane Harvey in the Gulf of Mexico on Aug. 25, 2017." title="Satellite loop of an intensifying Hurricane Harvey in the Gulf of Mexico on Aug. 25, 2017." src="https://i.amz.mshcdn.com/LUzrSf-A6X-0KqD0bMxDOvfPp2o=/fit-in/1200x9600/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fcard%2Fimage%2F573508%2F06ded4eb-2bd2-4ef1-b981-3ef41eee4afd.gif" alt="Satellite loop of an intensifying Hurricane Harvey in the Gulf of Mexico on Aug. 25, 2017." data-fragment="m!2af4" data-image="https://i.amz.mshcdn.com/7nB0OzDkZwAcSZL13Y2Iw4rRdeE=/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fcard%2Fimage%2F573508%2F06ded4eb-2bd2-4ef1-b981-3ef41eee4afd.gif" data-micro="1"></p>
<figcaption class="image-caption"><p>Satellite loop of an intensifying Hurricane Harvey in the Gulf of Mexico on Aug. 25, 2017.</p></figcaption><div class="image-credit"><p>Image:  rammb/cira/colorado state university</p></div></figure><p>The National Weather Service is ratcheting up its language to make sure people understand that this storm is not a normal event. In fact, meteorologists are <a href="https://twitter.com/afreedma/status/901074720359100417" target="_blank">having difficulty</a> recalling such a dire flood forecast associated with a landfalling hurricane. </p>
<p>Other recent storms have had strongly worded warnings and a high flood potential, including <a href="https://weather.com/news/news/south-carolina-historic-flood-rainfall-record-extreme" target="_blank">Hurricane Joaquin in South Carolina</a> during the 2015 hurricane season. However, that storm never made landfall. Tropical Storm Allison in 2001 devastated the Houston area, but its rains were far less widespread than the forecast calls for with Harvey. </p>
<p>In other words, Hurricane Harvey may stand alone in the history books if the epic deluge comes to fruition. </p>
<p>Words such as "devastating," "life-threatening," "record-setting," catastrophic," and "uninhabitable" are being used to describe the storm's impacts, mainly due to a combination of storm surge flooding at the coast and inland flooding from heavy rainfall. </p>
<p>"These high rainfall amounts will likely produce devastating and life threatening flash flooding," said a <a href="http://www.weather.gov/srh/tropical?office=crp#hti" target="_blank">local statement</a> issued by the National Weather Service forecast office in Corpus Cristi.</p>
<p>Rick Knabb, the hurricane specialist for The Weather Channel and former director of the National Hurricane Center, released a video on Youtube on Thursday expressing his extreme concern about this slow-moving storm. </p>
<div class="youtube-wrapper"><p><iframe src="https://www.youtube.com/embed/k7T_buUdWoM?enablejsapi=1&amp;"></iframe></p></div>
<p>The forecast calls for Hurricane Harvey to make landfall on Friday night or early Saturday morning, only to pinwheel along the Texas coast for days, potentially keeping the rain falling straight through Thursday of next week. If this happens, it would result in catastrophic flooding in regions already prone to this hazard. </p>
<p>The center of Harvey is moving over Gulf waters that are 1 to 2 degrees Celsius, or 1.8 to 3.6  degrees Fahrenheit, above average for this time of year, adding more fuel to power the hurricane.</p>
<p>In the Corpus Christi area, the peak storm surge is expected to be 6 to 12 feet above ground level from Mustang Island to Port O'Connor. Some other areas are expecting between 8 inches and a foot of storm surge, with flooding continuing for days.</p>
<div class="twitter-wrapper sort-rerender"><div><blockquote class="twitter-tweet">
<p lang="en" dir="ltr">What does the <a href="https://twitter.com/NWS" target="_blank">@NWS</a> forecast of 6-12 ft of storm surge flooding from <a href="https://twitter.com/hashtag/Harvey?src=hash" target="_blank">#Harvey</a> mean? For reference, the ceiling at our office is 11 ft. <a href="https://twitter.com/NOAA" target="_blank">@NOAA</a> <a href="https://t.co/A47IrOWYsu" target="_blank">pic.twitter.com/A47IrOWYsu</a></p>
<p>— NHC_Surge (@NHC_Surge) <a href="https://twitter.com/NHC_Surge/status/901059209583833089" target="_blank">August 25, 2017</a></p>
</blockquote></div></div>
<p>A storm surge of 8 to 12 feet above ground level is expected in some areas, and the storm's slow movement means that flooding could occur from multiple high tides.</p>
<p>Storm surge flooding occurs when a storm piles water toward the coast, from a combination of strong onshore winds and low atmospheric pressure. Sea level rise from human-caused global warming as well as gradual sinking of some coastal land areas can exacerbate storm surge flooding.</p>
<p>The storm surge threat extends up the coast, to the low-lying Houston-Galveston area. This scenario is particularly dire since days of onshore winds and storm surge could hinder inland floodwaters from draining into the sea.</p>
<p>Hal Needham, a storm surge expert, wrote on his blog on Friday that the storm surge will be so prolonged that it will act to worsen inland flooding with a combo of freshwater and saltwater flooding.</p>
<p>The flood threat for Houston and Galveston may be greatest after Monday, as the storm meanders along or just offshore, piling water toward the coast and dumping heavy rain inland. </p>
<p>“The collision of these ingredients looks like a train and car headed for an intersection on the tracks,” <a href="http://hurricanehalssb.blogspot.com/" target="_blank">he wrote</a>.</p>
<p>“If Galveston Bay is raised by several feet for many days, and a wide area of Texas real estate receives 15-20 or more inches of rain, where is that rain going to go? Runoff into Galveston Bay and Galveston Harbor will be severely impeded and this will create a catastrophic compound flood event.”</p>
<div class="twitter-wrapper sort-rerender"><div><blockquote class="twitter-tweet">
<p lang="en" dir="ltr">NEW: NOAA's <a href="https://twitter.com/hashtag/GOES16?src=hash" target="_blank">#GOES16</a> shows a "sandwich loop" — a combination of visible and infrared imagery — of <a href="https://twitter.com/hashtag/HurricaneHarvey?src=hash" target="_blank">#HurricaneHarvey</a> today, August 25, 2017. <a href="https://t.co/o4EBfF69xZ" target="_blank">pic.twitter.com/o4EBfF69xZ</a></p>
<p>— NOAA Satellites PA (@NOAASatellitePA) <a href="https://twitter.com/NOAASatellitePA/status/901116203447570432" target="_blank">August 25, 2017</a></p>
</blockquote></div></div>
<p>Meteorologists Jeff Masters and Bob Henson of Weather Underground <a href="https://www.wunderground.com/cat6/hurricane-harvey-rapidly-intensifies-catastrophic-flooding-likely-texas" target="_blank">wrote on Friday </a>that this storm has few, if any, precedent in hurricane history. </p>
<p>“The historical record of U.S. hurricanes gives us few, if any, analogs for a major hurricane landfall that transitions into a multi-day rainfall event as prolonged, extensive, and intense as the scenario painted by multiple forecast models for Harvey.”</p>
<p>According to the NWS office in Houston, "the primary emphasis and greatest threat to life and property will be the extreme rainfall amounts that <br>will likely lead to a potentially catastrophic and prolonged flash flooding event."</p>
<h2>Storm's slow movement is main concern</h2>
<p>How much rain a hurricane produces is largely a function of its forward speed. With Hurricane Harvey, the forward motion once its center crosses the Texas coast between Corpus Christi and Houston may be essentially nil. This could lead to phenomenal rainfall totals.</p>
<figure class="image"><p><img class="" data-credit-name="noaa/nhc." data-credit-provider="custom type" data-caption="Track forecast for Hurricane Harvey, showing the incredibly slow, meandering movement once it makes landfall." title="Track forecast for Hurricane Harvey, showing the incredibly slow, meandering movement once it makes landfall." src="https://i.amz.mshcdn.com/YntvOZTu28FYgID1daPPF7XssqA=/fit-in/1200x9600/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fcard%2Fimage%2F573495%2Fcd13a024-20a4-4d35-8151-51a4b66d58c1.png" alt="Track forecast for Hurricane Harvey, showing the incredibly slow, meandering movement once it makes landfall." data-fragment="m!5dad" data-image="https://i.amz.mshcdn.com/_T8rSALhBvP5c_4S0vdJzwPRDNY=/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fcard%2Fimage%2F573495%2Fcd13a024-20a4-4d35-8151-51a4b66d58c1.png" data-micro="1"></p>
<figcaption class="image-caption"><p>Track forecast for Hurricane Harvey, showing the incredibly slow, meandering movement once it makes landfall.</p></figcaption><div class="image-credit"><p>Image:  noaa/nhc.</p></div></figure><p>Because the storm is likely to get trapped over South Texas for days, caught between two high pressure systems — one to the east, and the other to the west — it's also likely that inland flooding will be compounded by the strong onshore winds, which will discourage the floodwaters from draining into the sea. </p>
<p>Some computer models even loop the storm back out over the Gulf of Mexico, only to make a second landfall in northeastern Texas or western Louisiana early next week. Even the most sober-minded meteorologists have been reaching for superlatives on Thursday and Friday to try to warn Texans that what they are facing is no ordinary tropical weather system. </p>
<p>Such a scenario, with a water-laden hurricane making landfall and stalling out, is the stuff of nightmares for flood forecasters, since the number one killer from tropical cyclones is inland flooding. Though most people think of wind as a hurricane's greatest weapon, flooding kills nine out of 10 people who perish in such storms.</p>
<figure class="image"><p><img class="" data-credit-name="noaa/wpc/weatherbell analytics" data-credit-provider="custom type" data-caption="7-day rainfall forecast showing 30 to 35-inch rains along the Texas coast from Hurricane Harvey." title="7-day rainfall forecast showing 30 to 35-inch rains along the Texas coast from Hurricane Harvey." src="https://i.amz.mshcdn.com/HoL2JQxZ-GesDjC6wobO2vcJjDo=/fit-in/1200x9600/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fcard%2Fimage%2F573531%2Fe0b4be38-6f00-4368-95eb-79987f22d731.png" alt="7-day rainfall forecast showing 30 to 35-inch rains along the Texas coast from Hurricane Harvey." data-fragment="m!27dd" data-image="https://i.amz.mshcdn.com/qTwAOljiZKTcnUQOYe-O_buMXSY=/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fcard%2Fimage%2F573531%2Fe0b4be38-6f00-4368-95eb-79987f22d731.png" data-micro="1"></p>
<figcaption class="image-caption"><p>7-day rainfall forecast showing 30 to 35-inch rains along the Texas coast from Hurricane Harvey.</p></figcaption><div class="image-credit"><p>Image:  noaa/wpc/weatherbell analytics</p></div></figure><p>Parts of Louisiana are <a href="http://reports.climatecentral.org/great-flood-louisiana/one-year-later/" target="_blank">still recovering</a> after record rains caused widespread damage in 2016, making this storm particularly unwelcome. </p>
<p>Texas has a history of major floods from slow-moving tropical storms or hurricanes. Tropical Storm Allison, which struck the Houston area in June of 2001, killed 41 people, and caused $9 billion in damage. Harris County alone had $5 billion in damage along with 22 deaths from that storm.</p>
<p>Since then, heavy rainstorms have continued to demonstrate Houston's vulnerability to heavy rains. <a href="https://mashable.com/2016/04/18/houston-deluge-flooding/">A flood event in April 2016</a> virtually shut down the third largest city in the U.S. by flooding highways, parking lots, and overwhelming drainage systems.</p>
<p>Across much of the U.S. and around the world, extreme rainfall events are becoming more common as the world warms. In addition, scientists expect that as human-caused global warming continues and the atmosphere holds more moisture, tropical storms and hurricanes will produce heavier rains.  </p>
<div class="bonus-video-card">
<h2 class="title"><a href="https://mashable.com/2017/08/24/tropical-storm-harvey/" target="_blank">WATCH: Hurricane Harvey is intensifying in the Gulf of Mexico</a></h2>
<div class="content-mash-video" data-source="blueprint" data-template="bonus" data-video="360OkJV0V4">
<p><img alt="Https%3a%2f%2fblueprint api production.s3.amazonaws.com%2fuploads%2fvideo uploaders%2fdistribution thumb%2fimage%2f81405%2f05cb9463 bc83 4706 a131 d8421ef738b0" src="https://i.amz.mshcdn.com/Oa1S5Ky_SdaPcdY9MMFH1srFEbQ=/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fvideo_uploaders%2Fdistribution_thumb%2Fimage%2F81405%2F05cb9463-bc83-4706-a131-d8421ef738b0.jpg" data-fragment="m!5b6a" data-image="https://i.amz.mshcdn.com/Oa1S5Ky_SdaPcdY9MMFH1srFEbQ=/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fvideo_uploaders%2Fdistribution_thumb%2Fimage%2F81405%2F05cb9463-bc83-4706-a131-d8421ef738b0.jpg" data-micro="1"></p>
<script class="playerMetadata" type="application/json">{"player":{"description":"It's coming.","image":"https://i.amz.mshcdn.com/Oa1S5Ky_SdaPcdY9MMFH1srFEbQ=/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fvideo_uploaders%2Fdistribution_thumb%2Fimage%2F81405%2F05cb9463-bc83-4706-a131-d8421ef738b0.jpg","mediaid":"360OkJV0V4","preload":false,"title":"Hurricane Harvey is intensifying in the Gulf of Mexico","sources":[{"file":"https://vdist.aws.mashable.com/cms/2017/8/78d9debb-fa4a-4bd8/hls.m3u8"},{"file":"https://vdist.aws.mashable.com/cms/2017/8/78d9debb-fa4a-4bd8/dash.mpd"},{"file":"https://vdist.aws.mashable.com/cms/2017/8/78d9debb-fa4a-4bd8/mp4/1080.mp4"},{"file":"https://vdist.aws.mashable.com/cms/2017/8/78d9debb-fa4a-4bd8/mp4/720.mp4"},{"file":"https://vdist.aws.mashable.com/cms/2017/8/78d9debb-fa4a-4bd8/mp4/480.mp4"}]},"options":{"disableAds":false,"disableSharing":false,"nextupAction":"autoplay","embedUrl":"https://mashable.com/videos/blueprint:360OkJV0V4/embed/?player=offsite","standaloneUrl":null,"post":{"url":"https://mashable.com/2017/08/24/tropical-storm-harvey/","date":"2017-08-24T15:25:04.128Z","bp_id":55061,"wp_id":null}},"advertising":{"params":{"keywords":"science,mashable-video,weather,texas,flood,flooding,rain,real-time,real-time video,real time,tropical storm,real-time-video,real time video,harvey,tropical storm harvey","sec0":null,"sec1":"","prc":""}},"analytics":{"labels":"science,mashable-video,weather,texas,flood,flooding,rain,real-time,real-time video,real time,tropical storm,real-time-video,real time video,harvey,tropical storm harvey","videoSeriesName":null}}</script>
</div>
</div>
<script>      window._msla=window.loadScriptAsync||function(src,id){if(document.getElementById(id))return;var js=document.createElement('script');js.id=id;js.src=src;document.getElementsByTagName('script')[0].parentNode.insertBefore(js,fjs);};
_msla("https://platform.twitter.com/widgets.js","twitter_jssdk");</script>





</section>

<div class='fb-quote'></div><footer class='article-topics'>
Topics:
<a href="/category/climate/">Climate</a>, <a href="/category/climate-environment/">climate-environment</a>, <a href="/category/flood/">flood</a>, <a href="/category/hurricane-harvey/">hurricane-harvey</a>, <a href="/category/louisiana/">Louisiana</a>, <a href="/category/science/">Science</a>, <a href="/category/storm-surge/">storm surge</a>, <a href="/category/texas/">texas</a>, <a href="/category/weather-records/">weather records</a>
</footer>
<div class='2017-boost-slot'><div class="ad_container ad-slot" data-overrides="{&quot;targeting&quot;:{&quot;tile&quot;:1,&quot;adnum&quot;:1,&quot;sec0&quot;:&quot;science&quot;,&quot;sec1&quot;:&quot;&quot;,&quot;sec2&quot;:&quot;posts&quot;,&quot;topic&quot;:&quot;climate,science&quot;,&quot;postid&quot;:&quot;bp55134&quot;,&quot;posts&quot;:&quot;none&quot;}}" data-type="btf_article_mobile_rec"></div></div>
<div id="taboola-below-article-thumbnails"></div>
<div data-display-daily-newsletter="show" id="newsletter-signup"></div>
<script>
  if (window.pageChanged)
    window.omni({"channel":"science","content_type":"article","v_buy_i":null,"h_pub_buy":null,"v_cur_i":0,"v_max_i":0,"events":"","top_channel":"science","content_source_type":"Internal","content_source_name":"Internal","author_name":"Andrew Freedman","age":"173","pub_day":25,"pub_month":8,"pub_year":2017,"pub_date":"08/25/2017","sourced_from":"Internal","isPostView":true,"post_lead_type":"Alt Image Lead","topics":"climate,climate-environment,flood,hurricane-harvey,louisiana,science,storm-surge,texas,weather-records","campaign":null,"display_mode":null,"viral_video_type":null,"standalone_video_show":null,"b_flag":true,"cms_author_name":null,"cms_author_geo":"us","cms_author_team":"Science","bp_id":55134,"shoppable":null,"voice":"Mashable","level_of_effort":"One to four hours","content_format":"Article","video_platform_target":null,"classification_options":false,"key_topics":["Climate & Environment"],"job_function":"Explainer/Analysis"});
    metaData = {"link":[["canonical","https://mashable.com/2017/08/25/hurricane-harvey-unprecedented-flood-risk/"],["image_src","https://i.amz.mshcdn.com/2CmhQW5JpUuQh6h-HA8-iRtJgHA=/1200x627/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg"]],"meta_property":[["og:url","https://mashable.com/2017/08/25/hurricane-harvey-unprecedented-flood-risk/"],["og:title","Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times"],["og:type","article"],["og:site_name","Mashable"],["og:description","Nine out of 10 hurricane deaths are from water."],["og:image","https://i.amz.mshcdn.com/f3f8wgq0wNag4F17vjY3cQG0944=/1200x630/2017%2F08%2F25%2Fce%2F16d532df57424801819e04f05eb5b2c0.f7b73.jpg"],["og:article:published_time","2017-08-25T15:14:52Z"],["og:article:modified_time","2017-08-25T20:58:31Z"],["og:article:publisher","https://www.facebook.com/mashable"]],"meta_name":[["description","Hurricane Harvey could bring extreme flooding to Texas in the next few days, forecasters warn."],["keywords","climate, science, louisiana, global-warming, extreme-weather, texas, flood, weather-records, storm-surge, hurricane-harvey"],["twitter:title","Hurricane Harvey is the biggest flood threat of any U.S. storm in modern times"],["twitter:description","Nine out of 10 hurricane deaths are from water, not wind."],["twitter:image","https://i.amz.mshcdn.com/MBtbYNXIpiMRrDknNL7NCbpMSl8=/640x360/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg"],["twitter:site","@mashable"],["twitter:via","mashable"],["twitter:url","https://mashable.com/2017/08/25/hurricane-harvey-unprecedented-flood-risk/"],["twitter:creator","@mashable"],["twitter:card","photo"],["twitter:image:width","640"],["twitter:image:height","360"],["date","2017-08-25 15:14:52 UTC"],["sailthru.author","Andrew Freedman"],["sailthru.image.thumb","https://i.amz.mshcdn.com/Jco71zEf_6B4fnZwvvP4WonJxgY=/115x115/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg"],["sailthru.image.full","https://i.amz.mshcdn.com/6p7ID_ymJbxYV8uKvt1sxzTaMf4=/950x534/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg"],["sailthru.lead_image","https://i.amz.mshcdn.com/nsGBMUw9OzoLVvDNisNk_WsooTs=/600x338/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg"],["sailthru.secondary_image","https://i.amz.mshcdn.com/dDjBrTnt815AuHvHLsYgDhZSXXw=/288x162/https%3A%2F%2Fblueprint-api-production.s3.amazonaws.com%2Fuploads%2Fstory%2Fthumbnail%2F55134%2F16d532df-5742-4801-819e-04f05eb5b2c0.jpg"],["sailthru.exclude_homepage",false],["sailthru.exclude_uk",false],["sailthru.exclude_australia",false],["sailthru.exclude_india",false],["author","Andrew Freedman"]],"short_url":[["short_url","http://on.mash.to/2wuBwHp"]]};
</script>
<div class='right_rail_replace'>
<div class="ad_container ad-slot" data-overrides="{&quot;targeting&quot;:{&quot;tile&quot;:2,&quot;adnum&quot;:2,&quot;sec0&quot;:&quot;science&quot;,&quot;sec1&quot;:&quot;&quot;,&quot;sec2&quot;:&quot;posts&quot;,&quot;topic&quot;:&quot;climate,science&quot;,&quot;postid&quot;:&quot;bp55134&quot;,&quot;posts&quot;:&quot;none&quot;}}" data-type="no_right_rail_desktop"></div>
</div>
</article>
</div>
</div>
</div>
<aside class='box-cell sidebar'>
<div class='ad sidebar-inset sidebar-drop'>
<div class="ad_container ad-slot" data-overrides="{&quot;targeting&quot;:{&quot;tile&quot;:3,&quot;adnum&quot;:1,&quot;sec0&quot;:&quot;science&quot;,&quot;sec1&quot;:&quot;&quot;,&quot;sec2&quot;:&quot;posts&quot;,&quot;topic&quot;:&quot;climate,science&quot;,&quot;postid&quot;:&quot;bp55134&quot;,&quot;posts&quot;:&quot;none&quot;}}" data-type="right_rail"></div>

</div>
<div class='sidebar-inset' id='big-stories'></div>
</aside>
</div>

<!-- Analytics -->

<!-- Twitter Ad Tracker -->
<noscript>
<img alt='' height='1' src='https://analytics.twitter.com/i/adsct?txn_id=l4o6d&amp;p_id=Twitter' style='display:none;' width='1'>
<img alt='' height='1' src='https://t.co/i/adsct?txn_id=l4o6d&amp;p_id=Twitter' style='display:none;' width='1'>
</noscript>
<img class='bluekai-test-img' height='0' src='https://mashable.com/favicon-16x16.png?bk_uuid=$_BK_UUID&amp;BK_SWAP_DEST=19275' width='0'>
</div>
</div>
<!-- scroll load stub - do not remove -->
<div class='after-page-container'></div>
<script id='banner-template' type='text/template'>
<div class='banner-ad-wrapper'>
<div class="ad_container ad-slot" data-overrides="{&quot;targeting&quot;:{&quot;tile&quot;:4,&quot;adnum&quot;:1,&quot;sec0&quot;:&quot;science&quot;,&quot;sec1&quot;:&quot;&quot;,&quot;sec2&quot;:&quot;posts&quot;,&quot;topic&quot;:&quot;climate,science&quot;,&quot;postid&quot;:&quot;bp55134&quot;,&quot;posts&quot;:&quot;none&quot;}}" data-type="banner"></div>
</div>
</script>

</div><div id='fb-root'></div><script>
  if(window.initPage) { window.initPage() }
  else { $(function() { window.initPage && window.initPage(); })}
</script>
</div><footer id='site-footer-wrapper'>
<div class='page-container' id='site-footer'><ul class='nav'><li><a href="/about/">About Us</a></li><li><a href="http://jobs.mashable.com">Jobs</a></li><li><a href="/advertise/">Advertise</a></li><li><a href="/2011/05/09/connect-with-mashable/">Subscribe</a></li><li><a href="/privacy/">Privacy</a></li><li><a href="/terms/">Terms</a></li></ul><ul class='social'><li><a class='facebook' href='https://www.facebook.com/mashable/' target='_social'></a></li>
<li><a class='twitter' href='https://twitter.com/mashable' target='_social'></a></li>
<li><a class='gplus' href='https://plus.google.com/+Mashable' target='_social'></a></li>
<li><a class='rss' href='http://feeds.mashable.com/Mashable' target='_social'></a></li>
<li><a class='pinterest' href='https://pinterest.com/mashable/' target='_social'></a></li>
<li><a class='youtube' href='https://www.youtube.com/user/mashable' target='_social'></a></li>
<li><a class='stumbleupon' href='https://www.stumbleupon.com/channel/Mashable' target='_social'></a></li>
<li><a class='linkedin' href='https://www.linkedin.com/company/mashable' target='_social'></a></li></ul>
<div class='about'>
<a class='brand' href='/'>
Mashable
</a>
<span class='blurb'>is a global, multi-platform media and entertainment company. Powered by its own proprietary technology, Mashable is the go-to source for tech, digital culture and entertainment content for its dedicated and influential audience around the globe.</span>
</div>
<ul class='copyright-and-legal'>
<li>
&copy;2005-2018
Mashable, Inc.
</li>
<li>
Reproduction without explicit permission is prohibited. All Rights Reserved.
</li>
<li>
Designed in collaboration with <a rel="nofollow" href="http://www.codeandtheory.com">Code &amp; Theory</a>
</li>
</ul>
</div>

</footer>

<noscript>
<img src='https://sb.scorecardresearch.com/p?c1=2&amp;c2=8750086&amp;cv=2.0&amp;cj=1'>
</noscript>
</div>
</div>
<script>
  !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
  n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
  n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
  t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
  document,'script','https://connect.facebook.net/en_US/fbevents.js');
  fbq('init', '1453039084979896');
  fbq('track', "PageView");
</script>
<noscript>
<img height='1' src='https://www.facebook.com/tr?id=1453039084979896&amp;ev=PageView&amp;noscript=1' style='display: none' width='1'>
</noscript>

<script>
  window.detectStaffEditableLink && window.detectStaffEditableLink();
</script>
<script type="text/javascript">
  /*<![CDATA[*/ window.lightboxjs || function (c) { function g(b, d) { d && (d += (/\?/.test(d) ? "&" : "?") + "lv=1"); c[b] || function () { var i = window, h = document, j = b, g = h.location.protocol, l = "load", k = 0; (function () { function b() { a.P(l); a.w = 1; c[j]("_load") } c[j] = function () { function m() { m.id = e; return c[j].apply(m, arguments) } var b, e = ++k; b = this && this != i ? this.id || 0 : 0; (a.s = a.s || []).push([e, b, arguments]); m.then = function (b, c, h) { var d = a.fh[e] = a.fh[e] || [], j = a.eh[e] = a.eh[e] || [], f = a.ph[e] = a.ph[e] || []; b && d.push(b); c && j.push(c); h && f.push(h); return m }; return m }; var a = c[j]._ = {}; a.fh = {}; a.eh = {}; a.ph = {}; a.l = d ? d.replace(/^\/\//, (g == "https:" ? g : "https:") + "//") : d; a.p = { 0: +new Date }; a.P = function (b) { a.p[b] = new Date - a.p[0] }; a.w && b(); i.addEventListener ? i.addEventListener(l, b, !1) : i.attachEvent("on" + l, b); var q = function () { function b() { return ["<head></head><", c, ' onload="var d=', n, ";d.getElementsByTagName('head')[0].", d, "(d.", g, "('script')).", i, "='", a.l, "'\"></", c, ">"].join("") } var c = "body", e = h[c]; if (!e) return setTimeout(q, 100); a.P(1); var d = "appendChild", g = "createElement",
  i = "src", k = h[g]("div"), l = k[d](h[g]("div")), f = h[g]("iframe"), n = "document", p; k.style.display = "none"; e.insertBefore(k, e.firstChild).id = o + "-" + j; f.frameBorder = "0"; f.id = o + "-frame-" + j; /MSIE[ ]+6/.test(navigator.userAgent) && (f[i] = "javascript:false"); f.allowTransparency = "true"; l[d](f); try { f.contentWindow[n].open() } catch (s) { a.domain = h.domain, p = "javascript:var d=" + n + ".open();d.domain='" + h.domain + "';", f[i] = p + "void(0);" } try { var r = f.contentWindow[n]; r.write(b()); r.close() } catch (t) { f[i] = p + 'd.write("' + b().replace(/"/g, String.fromCharCode(92) + '"') + '");d.close();' } a.P(2) }; a.l && q() })() }(); c[b].lv = "1"; return c[b] } var o = "lightboxjs", k = window[o] = g(o); k.require = g; k.modules = c }({}); /*]]>*/</script><script type="text/javascript">window.lightboxlib = lightboxjs.require("lightboxlib", "https://www.lightboxcdn.com/vendor/3c2be054-bb5f-4178-a524-c7877bda309d/lightbox.js?mb=" + (new Date().getTime()));
</script>

<script>/* loader-7.2.1 */ eval(atob("IWZ1bmN0aW9uIGUodCxuLHIpe2Z1bmN0aW9uIG8oYSxjKXtpZighblthXSl7aWYoIXRbYV0pe3ZhciB1PSJmdW5jdGlvbiI9PXR5cGVvZiByZXF1aXJlJiZyZXF1aXJlO2lmKCFjJiZ1KXJldHVybiB1KGEsITApO2lmKGkpcmV0dXJuIGkoYSwhMCk7dmFyIHM9bmV3IEVycm9yKCJDYW5ub3QgZmluZCBtb2R1bGUgJyIrYSsiJyIpO3Rocm93IHMuY29kZT0iTU9EVUxFX05PVF9GT1VORCIsc312YXIgbD1uW2FdPXtleHBvcnRzOnt9fTt0W2FdWzBdLmNhbGwobC5leHBvcnRzLGZ1bmN0aW9uKGUpe3ZhciBuPXRbYV1bMV1bZV07cmV0dXJuIG8obnx8ZSl9LGwsbC5leHBvcnRzLGUsdCxuLHIpfXJldHVybiBuW2FdLmV4cG9ydHN9Zm9yKHZhciBpPSJmdW5jdGlvbiI9PXR5cGVvZiByZXF1aXJlJiZyZXF1aXJlLGE9MDthPHIubGVuZ3RoO2ErKylvKHJbYV0pO3JldHVybiBvfSh7MTpbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtlKDIzKTt2YXIgcj1lKDEyKSxvPWUoNyk7d2luZG93LmFkb25pc0Nvbm5UeXBlPSJodHRwIixyLmxvZ2dlci5pbmZvKCJbaHR0cExvYWRlcl06IFN0YXJ0aW5nIGJvb3RzdHJhcCIpLCgwLG8ucnVuKSgpfSx7MTI6MTIsMjM6MjMsNzo3fV0sMjpbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKCl7cmV0dXJuIGkod2luZG93KSYmYyh3aW5kb3cpJiZ1KHdpbmRvdykmJmEod2luZG93KSYmcyh3aW5kb3cpfWZ1bmN0aW9uIG8oKXtyZXR1cm4gaSh3aW5kb3cpJiZ1KHdpbmRvdykmJmEod2luZG93KSYmcyh3aW5kb3cpfWZ1bmN0aW9uIGkoZSl7dHJ5e3JldHVybiBlLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJfX3h5el9fIiwiX194eXpfXyIpLGUubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oIl9feHl6X18iKSwhMH1jYXRjaChlKXtyZXR1cm4hMX19ZnVuY3Rpb24gYShlKXt0cnl7cmV0dXJuISFuZXcgZS5CbG9ifWNhdGNoKGUpe3JldHVybiExfX1mdW5jdGlvbiBjKGUpe3ZhciB0PWZ1bmN0aW9uKHQpe3JldHVybiB0LnNvbWUoZnVuY3Rpb24odCl7cmV0dXJuIHQgaW4gZX0pfSxuPVsiUlRDUGVlckNvbm5lY3Rpb24iLCJtb3pSVENQZWVyQ29ubmVjdGlvbiIsIndlYmtpdFJUQ1BlZXJDb25uZWN0aW9uIl0scj1bIlJUQ1Nlc3Npb25EZXNjcmlwdGlvbiIsIm1velJUQ1Nlc3Npb25EZXNjcmlwdGlvbiIsIndlYmtpdFJUQ1Nlc3Npb25EZXNjcmlwdGlvbiJdLG89WyJSVENJY2VDYW5kaWRhdGUiLCJtb3pSVENJY2VDYW5kaWRhdGUiLCJ3ZWJraXRSVENJY2VDYW5kaWRhdGUiXTtyZXR1cm4gdChuKSYmdChyKSYmdChvKX1mdW5jdGlvbiB1KGUpe3JldHVybiJQcm9taXNlImluIGUmJiJyZXNvbHZlImluIGUuUHJvbWlzZSYmInJlamVjdCJpbiBlLlByb21pc2UmJiJhbGwiaW4gZS5Qcm9taXNlJiYicmFjZSJpbiBlLlByb21pc2V9ZnVuY3Rpb24gcyhlKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZS5PYmplY3QuYXNzaWdufXQuZXhwb3J0cz17aXNTdXBwb3J0ZWRCcm93c2VyUnRjOnIsaXNTdXBwb3J0ZWRCcm93c2VyOm8saXNMb2NhbFN0b3JhZ2VTdXBwb3J0ZWQ6aSxpc1J0Y1N1cHBvcnRlZDpjLGlzQmxvYlN1cHBvcnRlZDphLGlzT2JqZWN0QXNzaWduU3VwcG9ydGVkOnMsaXNQcm9taXNlU3VwcG9ydGVkOnV9fSx7fV0sMzpbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCl7dmFyIG49dFsiYWRvbmlzLWNsaWVudC12ZXJzaW9uIl0scj10WyJjYWNoZS1jb250cm9sIl0sYT1yJiZyLnN0YXJ0c1dpdGgoIm1heC1hZ2UiKSxjPXQuZXhwaXJ5TWlsbGlzfHwwO2lmKGEpe2kubG9nZ2VyLmRlYnVnKHIpO3ZhciB1PXBhcnNlSW50KHIuc3BsaXQoIj0iKVsxXSwxMCk7aXNOYU4odSl8fChjPShuZXcgRGF0ZSkuZ2V0VGltZSgpKzFlMyp1KX1uJiYoaS5sb2dnZXIuaW5mbygiW2NhY2hlL3N0b3JlQWRvbmlzQ2xpZW50UmVzcG9uc2VdOiBuZXcgZXhwaXJ5ICIrYysiID0gIituZXcgRGF0ZShjKSksbyhlLG4sYykpfWZ1bmN0aW9uIG8oZSx0LG4pe3dpbmRvdy5sb2NhbFN0b3JhZ2UuYWRvbmlzQ2FjaGVTcmM9ZSx3aW5kb3cubG9jYWxTdG9yYWdlLmFkb25pc0NhY2hlRXhwaXJ5TWlsbGlzPW4sd2luZG93LmxvY2FsU3RvcmFnZS5hZG9uaXNDbGllbnRWZXJzaW9uPXR9T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLG4uc3RvcmVBZG9uaXNDbGllbnRSZXNwb25zZT1yLG4uY2FjaGVBZG9uaXNDbGllbnQ9bzt2YXIgaT1lKDEyKX0sezEyOjEyfV0sNDpbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1lKDUpO3dpbmRvdy5hZG9uaXNIYXNoPXdpbmRvdy5hZG9uaXNIYXNofHx3aW5kb3cubG9jYXRpb24uaGFzaHx8IiI7dmFyIG89d2luZG93LmFkb25pc0hhc2guaW5kZXhPZigiYWRvbmlzLWxvZ2dpbmciKT49MDtyLkxPR19MRVZFTD1vPyJkZWJ1ZyI6ci5MT0dfTEVWRUw7dmFyIGk9d2luZG93LmFkb25pc3x8e307aS53c0hvc3QmJnIuV1MmJihyLldTLmhvc3Q9aS53c0hvc3QpLGkudHJhbnNwb3J0JiYoci5TVUVaX0hUVFBfRU5EUE9JTlQ9aS50cmFuc3BvcnQpLHQuZXhwb3J0cz1yfSx7NTo1fV0sNTpbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt0LmV4cG9ydHM9e1JFQUxfU1RVTl9IT1NUOiJzdHVuLnhwYW5hbWEubmV0OjM0NzgiLFRVUk5TSUdOQUxfSE9TVDoidHMucC54cGFuYW1hLm5ldDo3MDAwIixTVFVOR1VOX0hPU1Q6InNnLnAueHBhbmFtYS5uZXQ6MzQ4MCIsU0VSVkVSX0NBTkRJREFURToiY2FuZGlkYXRlOjgyNzY0ODAyNiAxIHVkcCAyMTIyMTk0Njg3IFNFUlZFUl9JUCBTRVJWRVJfUE9SVCB0eXAgaG9zdCBnZW5lcmF0aW9uIDAiLFJFUE9SVElOR19VUkw6Imh0dHBzOi8vbGIuc3RhdHNldmVudC5jb20vc3RhdHMiLFJFUE9SVElOR19SQVRFOi4wMSxMT0dfTEVWRUw6ImVycm9yIixSRVBPUlRfRVJST1JTOiEwLE1BTklGRVNUX1VSTDoiaHR0cHM6Ly9zcmkuanNpbnRlZ3JpdHkuY29tL21hbmlmZXN0Lmpzb24iLE1BTklGRVNUX0VYUElSQVRJT05fVElNRTo4NjQwMCxBRF9NQVJLRVI6ImFkb25pcy1tYXJrZXIiLEFET05JU19DTElFTlRfRkVUQ0hfVVJMOiJodHRwczovL2Fkc2VydmVyLnhwYW5hbWEubmV0L2NsaWVudC03LWxhdGVzdC5qcyIsV1M6e2hvc3Q6InN1ZXotc2VydmVyLnhwYW5hbWEubmV0IixwYXRoOiIvd3MiLHBvcnQ6NDQzLHNlY3VyZTohMCxwcm9taXNlVGltZW91dDozZTN9LFNFUlZJQ0VfU1RBVFVTX1VSTDpmdW5jdGlvbihlKXtyZXR1cm4iaHR0cHM6Ly9jbGllbnQucmVhY3RyanMuY29tLyIrZSsiLXN0YXR1cy5qc29uIn0sU1VFWl9IVFRQX1JFVFJZOjMsU1VFWl9IVFRQX0RFTEFZOjEwMH19LHt9XSw2OltmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSl7cmV0dXJuIGUmJmUuX19lc01vZHVsZT9lOntkZWZhdWx0OmV9fWZ1bmN0aW9uIG8oKXt2YXIgZT0iY29udHJvbC1zZXJ2ZXIvY2hlY2siO2YubG9nZ2VyLmluZm8oIlsiK2UrIl06IENoZWNraW5nIHNlcnZpY2Ugc3RhdHVzIik7dmFyIHQ9aSh3aW5kb3cpO3JldHVybigwLHUucmVxdWVzdCkodCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gZi5sb2dnZXIuZGVidWcoIlsiK2UrIl06IFN0YXR1cyBjaGVjayBmZXRjaGVkIHdpdGggc3RhdHVzLWNvZGUgPCIrdC5zdGF0dXMrIj4iKSxKU09OLnBhcnNlKHQucmVzcG9uc2VUZXh0KX0pLmNhdGNoKGZ1bmN0aW9uKHQpe2YubG9nZ2VyLmluZm8oIlsiK2UrIl06IEZhaWxlZCB0byBjaGVjayBjb250cm9sIHNlcnZlciBzdGF0dXMgPCIrdCsiPiIpO3ZhciBuPXZvaWQgMCE9PXQucmVxP3QucmVxLnN0YXR1czpudWxsO3Rocm93IDA9PT1uP25ldyBzLlhockJsb2NrRXJyb3I6bmV3IEVycm9yKCJVbmV4cGVjdGVkIHN0YXR1cyBjb2RlIHdoaWxlIHBlcmZvcm1pbmcgY29udHJvbCBzZXJ2ZXIgY2hlY2ssIHN0YXR1cy1jb2RlID0gPCIrbisiPiIpfSl9ZnVuY3Rpb24gaShlKXtyZXR1cm4gZC5kZWZhdWx0LlNFUlZJQ0VfU1RBVFVTX1VSTChjLmRlZmF1bHQuZ2V0KGUubG9jYXRpb24uaG9zdCkpfU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxuLmNoZWNrPW8sbi5nZXRTZXJ2aWNlU3RhdHVzVXJsPWk7dmFyIGE9ZSgyNSksYz1yKGEpLHU9ZSgxOSkscz1lKDkpLGw9ZSg0KSxkPXIobCksZj1lKDEyKX0sezEyOjEyLDE5OjE5LDI1OjI1LDQ6NCw5Ojl9XSw3OltmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSl7aWYoZSYmZS5fX2VzTW9kdWxlKXJldHVybiBlO3ZhciB0PXt9O2lmKG51bGwhPWUpZm9yKHZhciBuIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbikmJih0W25dPWVbbl0pO3JldHVybiB0LmRlZmF1bHQ9ZSx0fWZ1bmN0aW9uIG8oZSl7cmV0dXJuIGUmJmUuX19lc01vZHVsZT9lOntkZWZhdWx0OmV9fWZ1bmN0aW9uIGkoKXt2YXIgZT0iaHR0cC1hZG9uaXMtY2xpZW50LWxvYWRlci9ydW4iO3JldHVybiBwLmRlZmF1bHQucmVwb3J0RXZlbnQoImJvb3RzdHJhcC5odHRwLnBhZ2V2aWV3IiksZy5kZWZhdWx0LmlzU3VwcG9ydGVkQnJvd3NlcigpPyh5LmxvZ2dlci5pbmZvKCJbIitlKyJdOiBCcm93c2VyIGlzIGNvbXBhdGlibGUiKSxwLmRlZmF1bHQucmVwb3J0RXZlbnQoImJvb3RzdHJhcC5odHRwLnN1cHBvcnRlZCIpLGEoKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB5LmxvZ2dlci5pbmZvKCJbIitlKyJdOiBSdW5uaW5nIGFuZCBjYWNoaW5nIGFkb25pc0NsaWVudCBzb3VyY2UiKSxwLmRlZmF1bHQucmVwb3J0RXZlbnQoImJvb3RzdHJhcC5odHRwLnJ1bmNsaWVudHNjcmlwdCIpLHAuZGVmYXVsdC5zYXZlVGltaW5nKCksZC5kZWZhdWx0LmRlZmluZVJlYWRPbmx5UHJvcGVydHkoImFkb25pc0NvbmZpZyIscy5kZWZhdWx0KSwoMCxtLnN0b3JlQWRvbmlzQ2xpZW50UmVzcG9uc2UpKHQuc291cmNlLHQubWV0YSksdy5kZWZhdWx0Lmluc2VydElubGluZVNjcmlwdCh0LnNvdXJjZSksbnVsbH0pLmNhdGNoKGZ1bmN0aW9uKHQpe3JldHVybiB0IGluc3RhbmNlb2YgSS5YaHJCbG9ja0Vycm9yPyh5LmxvZ2dlci5pbmZvKCJbIitlKyJdOiBGYWlsZWQgdG8gZmV0Y2ggYWRvbmlzLWNsaWVudCB1c2luZyBTdWV6IikseS5sb2dnZXIuaW5mbygiWyIrZSsiXTogQWxsIGxvYWRlcnMgZmFpbGVkIHRvIGZldGNoIGFkb25pcy1jbGllbnQsIGNoZWNraW5nIGNvbnRyb2wgc2VydmVyIiksXy5jaGVjaygpKTooeS5sb2dnZXIud2FybigiWyIrZSsiXTogVW5leHBlY3RlZCBlcnJvciB3aGVuIHRyeWluZyB0byBmZXRjaCBhZG9uaXMtY2xpZW50IG92ZXIgU3VlejogPCIrdCsiPiIpLHAuZGVmYXVsdC5yZXBvcnRFcnJvcih0KSxudWxsKX0pLmNhdGNoKGZ1bmN0aW9uKHQpe3JldHVybiB0IGluc3RhbmNlb2YgSS5YaHJCbG9ja0Vycm9yPyhwLmRlZmF1bHQucmVwb3J0RXZlbnQoImJvb3RzdHJhcC5odHRwLnN0YXR1c19ibG9ja2VkIikseS5sb2dnZXIuaW5mbygiWyIrZSsiXTogQ29udHJvbCBzZXJ2ZXIgY2hlY2sgZmFpbGVkLCBwcm9iYWJseSBhbiBhZGJsb2NrZXIiKSx7c3RhdHVzOiEwfSk6KHkubG9nZ2VyLndhcm4oIlsiK2UrIl06IFVuZXhwZWN0ZWQgZXJyb3IgZnJvbSBjb250cm9sIHNlcnZlciBjaGVjazogPCIrdCsiPiIpLHAuZGVmYXVsdC5yZXBvcnRFcnJvcih0KSxudWxsKX0pLnRoZW4oZnVuY3Rpb24odCl7KDAsUy5kZWZhdWx0KSh3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudCkmJnQmJiJzdGF0dXMiaW4gdCYmdC5zdGF0dXM/KHAuZGVmYXVsdC5yZXBvcnRFdmVudCgiYm9vdHN0cmFwLmh0dHAudHJpZ2dlZCIpLHkubG9nZ2VyLmluZm8oIlsiK2UrIl06IENvbnRyb2wgc2VydmVyIHJlcG9ydGVkIHN0YXR1cyBpcyBoZWFsdGh5IG9yIHdhcyBibG9ja2VkLCB0cmlnZ2VyaW5nIG9wcGVuaGVpbWVyIiksKDAsYy5yZXBsYWNlQ29udGVudCkod2luZG93LmRvY3VtZW50KSwoMCxULmRlZmF1bHQpKHdpbmRvdywiYWRvbmlzLWRldGVycmVudCIpKTp0JiYic3RhdHVzImluIHQmJiExPT09dC5zdGF0dXMmJihwLmRlZmF1bHQucmVwb3J0RXZlbnQoImJvb3RzdHJhcC5odHRwLm5vdF90cmlnZ2VkIikseS5sb2dnZXIud2FybigiWyIrZSsiXTogQ29udHJvbCBzZXJ2ZXIgcmVwb3J0ZWQgc3RhdHVzIGlzIHVuaGVhbHRoeSwgbm90IHRyaWdnZXJpbmcgb3BwZW5oZWltZXIiKSl9KSk6dm9pZCB5LmxvZ2dlci5pbmZvKCJbIitlKyJdOiBJbmNvbXBhdGlibGUgYnJvd3Nlciwgbm90IGNvbnRpbnVpbmciKX1mdW5jdGlvbiBhKCl7dmFyIGU9Imh0dHAtYWRvbmlzLWNsaWVudC1sb2FkZXIvbG9hZEFkb25pc0NsaWVudCI7cmV0dXJuIHkubG9nZ2VyLmRlYnVnKCJbIitlKyJdOiBUcnlpbmcgdG8gbG9hZCBhZG9uaXMtY2xpZW50IHdpdGggWEhSIGxvYWRlciAoZnJvbSBDRE4pIiksQy5sb2FkKCkuY2F0Y2goZnVuY3Rpb24odCl7cmV0dXJuIHQgaW5zdGFuY2VvZiBJLlhockJsb2NrRXJyb3I/eS5sb2dnZXIuaW5mbygiWyIrZSsiXTogRmFpbGVkIHRvIGZldGNoIGFkb25pcy1jbGllbnQgb3ZlciBYSFIsIHRyeWluZyB0byBsb2FkIGZyb20gY2FjaGUiKTooeS5sb2dnZXIud2FybigiWyIrZSsiXTogVW5leHBlY3RlZCBlcnJvciB3aGVuIHRyeWluZyBmZXRjaCBhZG9uaXMtY2xpZW50IG92ZXIgWEhSLCB0cnlpbmcgdG8gbG9hZCBmcm9tIGNhY2hlOiA8Iit0KyI+IikscC5kZWZhdWx0LnJlcG9ydEVycm9yKHQpKSx4LmxvYWQoKX0pLmNhdGNoKGZ1bmN0aW9uKHQpe3JldHVybiB0IGluc3RhbmNlb2YgSS5DYWNoZUxvYWRFcnJvcj95LmxvZ2dlci5pbmZvKCJbIitlKyJdOiBGYWlsZWQgdG8gZmV0Y2ggYWRvbmlzLWNsaWVudCBmcm9tIGNhY2hlLCB0cnlpbmcgdG8gbG9hZCBmcm9tIFN1ZXoiKTooeS5sb2dnZXIud2FybigiWyIrZSsiXTogVW5leHBlY3RlZCBlcnJvciB3aGVuIHRyeWluZyBmZXRjaCBhZG9uaXMtY2xpZW50IGZyb20gY2FjaGUsIHRyeWluZyB0byBsb2FkIGZyb20gU3VlejogPCIrdCsiPiIpLHAuZGVmYXVsdC5yZXBvcnRFcnJvcih0KSksTC5sb2FkKCl9KX1PYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksbi5ydW49aSxuLmxvYWRBZG9uaXNDbGllbnQ9YTt2YXIgYz1lKDIyKSx1PWUoNCkscz1vKHUpLGw9ZSgxOCksZD1vKGwpLGY9ZSgxNikscD1vKGYpLGg9ZSgyKSxnPW8oaCksdj1lKDE1KSx3PW8odiksYj1lKDYpLF89cihiKSxtPWUoMykseT1lKDEyKSxFPWUoMTcpLFM9byhFKSxPPWUoMTMpLFQ9byhPKSxSPWUoMTEpLEM9cihSKSxBPWUoMTApLEw9cihBKSxQPWUoOCkseD1yKFApLEk9ZSg5KX0sezEwOjEwLDExOjExLDEyOjEyLDEzOjEzLDE1OjE1LDE2OjE2LDE3OjE3LDE4OjE4LDI6MiwyMjoyMiwzOjMsNDo0LDY6Niw4OjgsOTo5fV0sODpbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKCl7dmFyIGU9ImxvYWRlcnMvY2FjaGUvbG9hZCI7YS5sb2dnZXIuZGVidWcoIlsiK2UrIl06IFN0YXJ0aW5nIGNhY2hlIGxvYWRlciIpLHdpbmRvdy5sb2NhbFN0b3JhZ2UuYWRvbmlzQ2FjaGVFeHBpcnkmJndpbmRvdy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgiYWRvbmlzQ2FjaGVFeHBpcnkiKTt2YXIgdD1wYXJzZUludCh3aW5kb3cubG9jYWxTdG9yYWdlLmFkb25pc0NhY2hlRXhwaXJ5TWlsbGlzLDEwKTtpc05hTih0KSYmKHQ9MCk7dmFyIG49d2luZG93LmxvY2FsU3RvcmFnZS5hZG9uaXNDbGllbnRWZXJzaW9uLHI9d2luZG93LmxvY2FsU3RvcmFnZS5hZG9uaXNDYWNoZVNyYyxvPShuZXcgRGF0ZSkuZ2V0VGltZSgpPj10LGM9eyJhZG9uaXMtY2xpZW50LXZlcnNpb24iOm4sZXhwaXJ5TWlsbGlzOnQsY2FjaGVkU291cmNlOnJ9O3JldHVybiByP28/KGEubG9nZ2VyLmRlYnVnKCJbIitlKyJdOiBDYWNoZWQgdmVyc2lvbiBvZiBhZG9uaXMtY2xpZW50IGlzIGV4cGlyZWQiKSxQcm9taXNlLnJlamVjdChuZXcgaS5DYWNoZUxvYWRFcnJvcihudWxsLGMpKSk6KGEubG9nZ2VyLmRlYnVnKCJbIitlKyJdOiBGb3VuZCBhIHZhbGlkIGNhY2hlZCB2ZXJzaW9uIG9mIGFkb25pcy1jbGllbnQiKSxQcm9taXNlLnJlc29sdmUoe3NvdXJjZTpyLG1ldGE6Y30pKTooYS5sb2dnZXIuZGVidWcoIlsiK2UrIl06IE5vIGNhY2hlZCB2ZXJzaW9uIG9mIGFkb25pcy1jbGllbnQgZm91bmQgaW4gdGhlIGxvY2FsU3RvcmFnZSIpLFByb21pc2UucmVqZWN0KG5ldyBpLkNhY2hlTG9hZEVycm9yKG51bGwsYykpKX1mdW5jdGlvbiBvKCl7cmV0dXJuIHIoKS5jYXRjaChmdW5jdGlvbihlKXtpZihlIGluc3RhbmNlb2YgaS5DYWNoZUxvYWRFcnJvcilyZXR1cm57c291cmNlOmUuc291cmNlLG1ldGE6ZS5tZXRhfX0pfU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxuLmxvYWQ9cixuLmxvYWRJZ25vcmluZ0Vycm9ycz1vO3ZhciBpPWUoOSksYT1lKDEyKX0sezEyOjEyLDk6OX1dLDk6W2Z1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlLHQpe2lmKCEoZSBpbnN0YW5jZW9mIHQpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfWZ1bmN0aW9uIG8oZSx0KXtpZighZSl0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZCIpO3JldHVybiF0fHwib2JqZWN0IiE9dHlwZW9mIHQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0P2U6dH1mdW5jdGlvbiBpKGUsdCl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQmJm51bGwhPT10KXRocm93IG5ldyBUeXBlRXJyb3IoIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uLCBub3QgIit0eXBlb2YgdCk7ZS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZSh0JiZ0LnByb3RvdHlwZSx7Y29uc3RydWN0b3I6e3ZhbHVlOmUsZW51bWVyYWJsZTohMSx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9fSksdCYmKE9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YoZSx0KTplLl9fcHJvdG9fXz10KX1PYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksbi5DYWNoZUxvYWRFcnJvcj1uLldzQmxvY2tFcnJvcj1uLlhockJsb2NrRXJyb3I9dm9pZCAwO3ZhciBhPWUoMjEpLGM9ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJmUuX19lc01vZHVsZT9lOntkZWZhdWx0OmV9fShhKTtuLlhockJsb2NrRXJyb3I9ZnVuY3Rpb24oZSl7ZnVuY3Rpb24gdCgpe3JldHVybiByKHRoaXMsdCksbyh0aGlzLCh0Ll9fcHJvdG9fX3x8T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpKS5hcHBseSh0aGlzLGFyZ3VtZW50cykpfXJldHVybiBpKHQsZSksdH0oYy5kZWZhdWx0KSxuLldzQmxvY2tFcnJvcj1mdW5jdGlvbihlKXtmdW5jdGlvbiB0KCl7cmV0dXJuIHIodGhpcyx0KSxvKHRoaXMsKHQuX19wcm90b19ffHxPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpLmFwcGx5KHRoaXMsYXJndW1lbnRzKSl9cmV0dXJuIGkodCxlKSx0fShjLmRlZmF1bHQpLG4uQ2FjaGVMb2FkRXJyb3I9ZnVuY3Rpb24oZSl7ZnVuY3Rpb24gdChlLG4pe3IodGhpcyx0KTt2YXIgaT1vKHRoaXMsKHQuX19wcm90b19ffHxPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpLmNhbGwodGhpcykpO3JldHVybiBpLnNvdXJjZT1lLGkubWV0YT1uLGl9cmV0dXJuIGkodCxlKSx0fShjLmRlZmF1bHQpfSx7MjE6MjF9XSwxMDpbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUpe3JldHVybiBlJiZlLl9fZXNNb2R1bGU/ZTp7ZGVmYXVsdDplfX1mdW5jdGlvbiBvKCl7dmFyIGU9ImxvYWRlcnMvc3Vlei1odHRwIjtkLmxvZ2dlci5kZWJ1ZygiWyIrZSsiXTogU3RhcnRpbmcgU3VleiBIVFRQIGxvYWRlciIpO3ZhciB0PUpTT04uc3RyaW5naWZ5KHtob3N0OiJhc3NldHMiLHBhdGg6ImNsaWVudCIscGFyYW1zOnt9LGhlYWRlcnM6e2Fkb25pc19jbGllbnRfYXBpOiI3LjAuMCJ9fSksbj17IkFkb25pcy1WZXJzaW9uIjoiNy4wLjAiLCJDYWNoZS1BZG9uaXMiOiJ0cnVlIn07cmV0dXJuIHZvaWQgMD09PWMuZGVmYXVsdC5TVUVaX0hUVFBfRU5EUE9JTlQ/UHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCJObyBhZG9uaXMgdHJhbnNwb3J0IGZvdW5kIikpOigwLGwucmVxdWVzdCkoYy5kZWZhdWx0LlNVRVpfSFRUUF9FTkRQT0lOVCwiUE9TVCIsdCxuKS50aGVuKGZ1bmN0aW9uKHQpe2QubG9nZ2VyLmRlYnVnKCJbIitlKyJdOiBTdWNjZXNzZnVsbHkgZmV0Y2hlZCBhZG9uaXMtY2xpZW50IG92ZXIgWEhSIik7dmFyIG49e307dHJ5e25bImFkb25pcy1jbGllbnQtdmVyc2lvbiJdPXQuZ2V0UmVzcG9uc2VIZWFkZXIoImFkb25pcy1jbGllbnQtdmVyc2lvbiIpfWNhdGNoKGUpe310cnl7blsiY2FjaGUtY29udHJvbCJdPXQuZ2V0UmVzcG9uc2VIZWFkZXIoImNhY2hlLWNvbnRyb2wiKX1jYXRjaChlKXt9cmV0dXJue3NvdXJjZTp0LnJlc3BvbnNlVGV4dCxtZXRhOm59fSkuY2F0Y2goZnVuY3Rpb24odCl7dGhyb3cgZC5sb2dnZXIuZGVidWcoIlsiK2UrIl06IEZhaWxlZCB0byBmZXRjaCBhZG9uaXMtY2xpZW50IGZyb20gU3VleiBvdmVyIFhIUiA8Iit0KyI+IiksMD09PXQucmVxLnN0YXR1cz9uZXcgZi5YaHJCbG9ja0Vycm9yOm5ldyBFcnJvcigiVW5leHBlY3RlZCBlcnJvciBmZXRjaGluIGFkb25pcy1jbGllbnQsIHN0YXR1cy1jb2RlID0gPCIrdC5yZXEuc3RhdHVzKyI+Iil9KX1mdW5jdGlvbiBpKCl7dmFyIGU9Yy5kZWZhdWx0LlNVRVpfSFRUUF9SRVRSWXx8MSx0PWMuZGVmYXVsdC5TVUVaX0hUVFBfREVMQVl8fDAsbj1BcnJheS5hcHBseSgwLEFycmF5KGUpKS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIG99KTtyZXR1cm4gcy5kZWZhdWx0LnJlcG9ydEV2ZW50KCJib290c3RyYXAuaHR0cC5zdWV6X29wZW5pbmciKSwoMCxwLmNoYWluKShuLHQpLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIHMuZGVmYXVsdC5yZXBvcnRFdmVudCgiYm9vdHN0cmFwLmh0dHAuc3Vlel9vcGVuZWQiKSxlfSkuY2F0Y2goZnVuY3Rpb24oZSl7dGhyb3cgZSBpbnN0YW5jZW9mIGYuWGhyQmxvY2tFcnJvciYmcy5kZWZhdWx0LnJlcG9ydEV2ZW50KCJib290c3RyYXAuaHR0cC5zdWV6X2Jsb2NrZWQiKSxlfSl9T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLG4ubG9hZE9uY2U9byxuLmxvYWQ9aTt2YXIgYT1lKDQpLGM9cihhKSx1PWUoMTYpLHM9cih1KSxsPWUoMTkpLGQ9ZSgxMiksZj1lKDkpLHA9ZSgxNCl9LHsxMjoxMiwxNDoxNCwxNjoxNiwxOToxOSw0OjQsOTo5fV0sMTE6W2Z1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19ZnVuY3Rpb24gbygpe3ZhciBlPSJsb2FkZXJzL2NhY2hlL3hociI7cmV0dXJuIGQubG9nZ2VyLmRlYnVnKCJbIitlKyJdOiBTdGFydGluZyBYSFIgbG9hZGVyIiksKDAsbC5yZXF1ZXN0KShjLmRlZmF1bHQuQURPTklTX0NMSUVOVF9GRVRDSF9VUkwpLnRoZW4oZnVuY3Rpb24odCl7ZC5sb2dnZXIuZGVidWcoIlsiK2UrIl06IFN1Y2Nlc3NmdWxseSBmZXRjaGVkIGFkb25pcy1jbGllbnQgb3ZlciBYSFIiKTt2YXIgbj17ImFkb25pcy1jbGllbnQtdmVyc2lvbiI6bnVsbH07dHJ5e25bImNhY2hlLWNvbnRyb2wiXT10LmdldFJlc3BvbnNlSGVhZGVyKCJjYWNoZS1jb250cm9sIil9Y2F0Y2goZSl7fXJldHVybntzb3VyY2U6dC5yZXNwb25zZVRleHQsbWV0YTpufX0pLmNhdGNoKGZ1bmN0aW9uKHQpe3Rocm93IGQubG9nZ2VyLmRlYnVnKCJbIitlKyJdOiBGYWlsZWQgdG8gZmV0Y2ggYWRvbmlzLWNsaWVudCBvdmVyIFhIUiA8Iit0KyI+IiksMD09PXQucmVxLnN0YXR1cz9uZXcgZi5YaHJCbG9ja0Vycm9yOm5ldyBFcnJvcigiVW5leHBlY3RlZCBlcnJvciBwZXJmb3JtaW5nIHN0YXR1cyBjaGVjayByZXF1ZXN0LCBzdGF0dXMtY29kZSA9IDwiK3QucmVxLnN0YXR1cysiPiIpfSl9ZnVuY3Rpb24gaSgpe3JldHVybiBvKCkuY2F0Y2goZnVuY3Rpb24oZSl7cmV0dXJuIGQubG9nZ2VyLmRlYnVnKCJmYWlsZWQgdG8gbG9hZCBhZG9uaXMtY2xpZW50IG92ZXIgaHR0cCIsZSkscy5kZWZhdWx0LnJlcG9ydEV2ZW50KCJib290c3RyYXAuY2xpZW50X2h0dHBfZmV0Y2hfZXJyb3IiKSx7c291cmNlOm51bGwsbWV0YTp7fX19KX1PYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksbi5sb2FkPW8sbi5sb2FkSWdub3JpbmdFcnJvcnM9aTt2YXIgYT1lKDQpLGM9cihhKSx1PWUoMTYpLHM9cih1KSxsPWUoMTkpLGQ9ZSgxMiksZj1lKDkpfSx7MTI6MTIsMTY6MTYsMTk6MTksNDo0LDk6OX1dLDEyOltmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPWUoNCksbz1mdW5jdGlvbihlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19KHIpLGk9ZSgyNyksYT0oMCxpLmNyZWF0ZSkoe2xldmVsOm8uZGVmYXVsdC5MT0dfTEVWRUx9KTt0LmV4cG9ydHM9e2xvZ2dlcjphLHN1ZXpMb2dnZXI6YX19LHsyNzoyNyw0OjR9XSwxMzpbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToiTkVXX1NDUklQVF9FVkVOVCIsbj1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06e30scj1uZXcgbyh0LHtkZXRhaWw6bn0pO2UuZGlzcGF0Y2hFdmVudChyKX12YXIgbz1lKDIwKTt0LmV4cG9ydHM9cn0sezIwOjIwfV0sMTQ6W2Z1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlLHQsbil7aWYoQXJyYXkuaXNBcnJheShlKSYmMD09PWUubGVuZ3RoKXJldHVybiBQcm9taXNlLnJlamVjdChuKTt0PXR8fDA7dmFyIGk9ZVswXTtyZXR1cm4gZT1lLnNsaWNlKDEpLGkoKS5jYXRjaChmdW5jdGlvbihuKXtyZXR1cm4gbyh0KS50aGVuKGZ1bmN0aW9uKG8pe3JldHVybiByKGUsdCxuKX0pfSl9ZnVuY3Rpb24gbyhlKXtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24odCxuKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKGUpe3JldHVybiB0KCl9LGUpfSl9T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLG4uY2hhaW49cn0se31dLDE1OltmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSx0KXthLmRlYnVnKCJpbnNlcmluZyBibG9iIik7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7bi5zcmM9ZSx0JiYobi5pbnRlZ3JpdHk9dCksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChuKX1mdW5jdGlvbiBvKGUsdCl7dmFyIG49bmV3IHdpbmRvdy5YTUxIdHRwUmVxdWVzdDt0cnl7bi5vcGVuKCJHRVQiLGUsITApLG4uYWRkRXZlbnRMaXN0ZW5lcigicmVhZHlzdGF0ZWNoYW5nZSIsZnVuY3Rpb24oZSl7ND09PW4ucmVhZHlTdGF0ZSYmMD09PW4uc3RhdHVzJiZpKHQpfSksbi5zZW5kKCl9Y2F0Y2goZSl7YS53YXJuKCJGYWxsaW5nIGJhY2sgdG8gaW5zZXJ0aW5nIGlubGluZSBzY3JpcHQiKSxpKHQpfX1mdW5jdGlvbiBpKGUpe3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO3QuaW5uZXJIVE1MPWUsZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZCh0KX12YXIgYT1lKDEyKS5sb2dnZXI7dC5leHBvcnRzPXtpbnNlcnRCbG9iU2NyaXB0OnIsdGVzdEJsb2JBbmRJbnNlcnRGYWxsYmFjazpvLGluc2VydElubGluZVNjcmlwdDppfX0sezEyOjEyfV0sMTY6W2Z1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlKXt2YXIgdD1uZXcgWE1MSHR0cFJlcXVlc3Qsbj1bcy5SRVBPUlRJTkdfVVJMLGVdLmpvaW4oIiIpO3Qub3BlbigiR0VUIixuLCEwKSx0LnNlbmQoKX1mdW5jdGlvbiBvKGUpe3MuUkVQT1JUX0VSUk9SUyYmcigiL2Fkb25pc19lcnJvcj9lPSIrZS50b1N0cmluZygpKyImd2Vic2l0ZT0iK3dpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSl9ZnVuY3Rpb24gaSgpe3JldHVybiBudWxsIT13aW5kb3cuQURPTklTX0JPT1RTVFJBUF9TVEFUUz8hMD09PXdpbmRvdy5BRE9OSVNfQk9PVFNUUkFQX1NUQVRTOk1hdGgucmFuZG9tKCk8cy5SRVBPUlRJTkdfUkFURX1mdW5jdGlvbiBhKGUsdCl7aWYoYyhlKSxpKCkpe3ZhciBuPXt3ZWJzaXRlOndpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSxrZXk6ZX07bnVsbCE9dCYmKG4ucXVhbnRpdHk9dCkscihbIi9hZG9uaXNfZXZlbnQvP2V2ZW50PSIsSlNPTi5zdHJpbmdpZnkobildLmpvaW4oIiIpKX19ZnVuY3Rpb24gYyhlKXt2YXIgdD17a2V5OmUsdGltZV9tczpNYXRoLnJvdW5kKHdpbmRvdy5wZXJmb3JtYW5jZS5ub3coKSksd2Vic2l0ZTp3aW5kb3cubG9jYXRpb24uaG9zdG5hbWV9O2QucHVzaCh0KX1mdW5jdGlvbiB1KCl7bC5kZWZpbmVSZWFkT25seVByb3BlcnR5KCJhZG9uaXNCb290c3RyYXBUaW1pbmciLGQpfXZhciBzPWUoNCksbD1lKDE4KSxkPVtdO3QuZXhwb3J0cz17cmVwb3J0RXJyb3I6byxyZXBvcnRFdmVudDphLHNhdmVUaW1pbmc6dSxzaG91bGRSZXBvcnQ6aX19LHsxODoxOCw0OjR9XSwxNzpbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUpe3ZhciB0PS9hbmRyb2lkfGlwaG9uZS9naSxuPS9DaHJvbWVcLyhcUykrIFNhZmFyaVwvKFxTKSskL2dpLHI9L1wpIEdlY2tvXC8oXFMpKyBGaXJlZm94XC8oXFMpKyQvZ2ksbz0vbGlrZSBHZWNrby4/XCkgVmVyc2lvblwvKFxTKSsgU2FmYXJpXC8oXFMpKyQvZ2k7cmV0dXJuLTE9PT1lLnNlYXJjaCh0KSYmKGUuc2VhcmNoKG4pPi0xfHxlLnNlYXJjaChyKT4tMXx8ZS5zZWFyY2gobyk+LTEpfU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxuLmRlZmF1bHQ9cn0se31dLDE4OltmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSx0KXt0cnl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdyxlLHt2YWx1ZTp0LHdyaXRhYmxlOiExfSl9Y2F0Y2goZSl7by53YXJuKCJDYW5ub3QgZGVmaW5lIHJlYWQtb25seSBwcm9wZXJ0eSBvZiB3aW5kb3cgb2JqZWN0OiAiK2UpfX12YXIgbz1lKDEyKS5sb2dnZXIsaT1mdW5jdGlvbihlKXsibG9hZGluZyIhPT1kb2N1bWVudC5yZWFkeVN0YXRlP2UoKTpkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixlKX07dC5leHBvcnRzPXtkZWZpbmVSZWFkT25seVByb3BlcnR5OnIscmVhZHk6aX19LHsxMjoxMn1dLDE5OltmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSx0KXtpZighKGUgaW5zdGFuY2VvZiB0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX1mdW5jdGlvbiBvKGUsdCl7aWYoIWUpdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKCJ0aGlzIGhhc24ndCBiZWVuIGluaXRpYWxpc2VkIC0gc3VwZXIoKSBoYXNuJ3QgYmVlbiBjYWxsZWQiKTtyZXR1cm4hdHx8Im9iamVjdCIhPXR5cGVvZiB0JiYiZnVuY3Rpb24iIT10eXBlb2YgdD9lOnR9ZnVuY3Rpb24gaShlLHQpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiB0JiZudWxsIT09dCl0aHJvdyBuZXcgVHlwZUVycm9yKCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvbiwgbm90ICIrdHlwZW9mIHQpO2UucHJvdG90eXBlPU9iamVjdC5jcmVhdGUodCYmdC5wcm90b3R5cGUse2NvbnN0cnVjdG9yOnt2YWx1ZTplLGVudW1lcmFibGU6ITEsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfX0pLHQmJihPYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mKGUsdCk6ZS5fX3Byb3RvX189dCl9ZnVuY3Rpb24gYShlKXt2YXIgdD1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06IkdFVCIsbj1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06bnVsbCxyPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTp7fTtyZXR1cm4gbmV3IHdpbmRvdy5Qcm9taXNlKGZ1bmN0aW9uKG8saSl7dmFyIGE9bmV3IHdpbmRvdy5YTUxIdHRwUmVxdWVzdDthLm9wZW4odCxlLCEwKTtmb3IodmFyIGMgaW4gcil7dmFyIHU9cltjXTthLnNldFJlcXVlc3RIZWFkZXIoYyx1KX1hLm9ubG9hZD1mdW5jdGlvbigpe2Euc3RhdHVzPj00MDA/aShuZXcgcyhhLCJVbmV4cGVjdGVkIHN0YXR1cyBjb2RlIikpOm8oYSl9LGEub25lcnJvcj1mdW5jdGlvbigpe2kobmV3IHMoYSwiRXJyb3IgZXN0YWJsaXNoaW5nIGNvbm5lY3Rpb24iKSl9LGEuc2VuZChuKX0pfU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxuLlhoclJlcXVlc3RFcnJvcj12b2lkIDAsbi5yZXF1ZXN0PWE7dmFyIGM9ZSgyMSksdT1mdW5jdGlvbihlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19KGMpLHM9bi5YaHJSZXF1ZXN0RXJyb3I9ZnVuY3Rpb24oZSl7ZnVuY3Rpb24gdChlLG4pe3IodGhpcyx0KTt2YXIgaT1vKHRoaXMsKHQuX19wcm90b19ffHxPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpLmNhbGwodGhpcyxuKSk7cmV0dXJuIGkucmVxPWUsaX1yZXR1cm4gaSh0LGUpLHR9KHUuZGVmYXVsdCl9LHsyMToyMX1dLDIwOltmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKGUpe3ZhciBuPWUuQ3VzdG9tRXZlbnQ7dC5leHBvcnRzPWZ1bmN0aW9uKCl7dHJ5e3ZhciBlPW5ldyBuKCJjYXQiLHtkZXRhaWw6e2ZvbzoiYmFyIn19KTtyZXR1cm4iY2F0Ij09PWUudHlwZSYmImJhciI9PT1lLmRldGFpbC5mb299Y2F0Y2goZSl7fXJldHVybiExfSgpP246InVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudCYmImZ1bmN0aW9uIj09dHlwZW9mIGRvY3VtZW50LmNyZWF0ZUV2ZW50P2Z1bmN0aW9uKGUsdCl7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkN1c3RvbUV2ZW50Iik7cmV0dXJuIHQ/bi5pbml0Q3VzdG9tRXZlbnQoZSx0LmJ1YmJsZXMsdC5jYW5jZWxhYmxlLHQuZGV0YWlsKTpuLmluaXRDdXN0b21FdmVudChlLCExLCExLHZvaWQgMCksbn06ZnVuY3Rpb24oZSx0KXt2YXIgbj1kb2N1bWVudC5jcmVhdGVFdmVudE9iamVjdCgpO3JldHVybiBuLnR5cGU9ZSx0PyhuLmJ1YmJsZXM9Qm9vbGVhbih0LmJ1YmJsZXMpLG4uY2FuY2VsYWJsZT1Cb29sZWFuKHQuY2FuY2VsYWJsZSksbi5kZXRhaWw9dC5kZXRhaWwpOihuLmJ1YmJsZXM9ITEsbi5jYW5jZWxhYmxlPSExLG4uZGV0YWlsPXZvaWQgMCksbn19KS5jYWxsKHRoaXMsInVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWw/Z2xvYmFsOiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp7fSl9LHt9XSwyMTpbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCl7aWYoIShlIGluc3RhbmNlb2YgdCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9ZnVuY3Rpb24gbyhlLHQpe2lmKCFlKXRocm93IG5ldyBSZWZlcmVuY2VFcnJvcigidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkIik7cmV0dXJuIXR8fCJvYmplY3QiIT10eXBlb2YgdCYmImZ1bmN0aW9uIiE9dHlwZW9mIHQ/ZTp0fWZ1bmN0aW9uIGkoZSx0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCYmbnVsbCE9PXQpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3VwZXIgZXhwcmVzc2lvbiBtdXN0IGVpdGhlciBiZSBudWxsIG9yIGEgZnVuY3Rpb24sIG5vdCAiK3R5cGVvZiB0KTtlLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKHQmJnQucHJvdG90eXBlLHtjb25zdHJ1Y3Rvcjp7dmFsdWU6ZSxlbnVtZXJhYmxlOiExLHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH19KSx0JiYoT2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZihlLHQpOmUuX19wcm90b19fPXQpfU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgYT1mdW5jdGlvbihlKXtmdW5jdGlvbiB0KCl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOiIiO3IodGhpcyx0KTt2YXIgbj1vKHRoaXMsKHQuX19wcm90b19ffHxPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpLmNhbGwodGhpcyxlKSk7cmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJtZXNzYWdlIix7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITEsdmFsdWU6ZSx3cml0YWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJuYW1lIix7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITEsdmFsdWU6bi5jb25zdHJ1Y3Rvci5uYW1lLHdyaXRhYmxlOiEwfSksRXJyb3IuaGFzT3duUHJvcGVydHkoImNhcHR1cmVTdGFja1RyYWNlIik/KEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKG4sbi5jb25zdHJ1Y3RvciksbyhuKSk6KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJzdGFjayIse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiExLHZhbHVlOm5ldyBFcnJvcihlKS5zdGFjayx3cml0YWJsZTohMH0pLG4pfXJldHVybiBpKHQsZSksdH0oZnVuY3Rpb24oZSl7ZnVuY3Rpb24gdCgpe2UuYXBwbHkodGhpcyxhcmd1bWVudHMpfXJldHVybiB0LnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKGUucHJvdG90eXBlLHtjb25zdHJ1Y3Rvcjp7dmFsdWU6ZSxlbnVtZXJhYmxlOiExLHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH19KSxPYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mKHQsZSk6dC5fX3Byb3RvX189ZSx0fShFcnJvcikpO24uZGVmYXVsdD1hLHQuZXhwb3J0cz1uLmRlZmF1bHR9LHt9XSwyMjpbZnVuY3Rpb24oZSx0LG4peyFmdW5jdGlvbihlLHIpeyJvYmplY3QiPT10eXBlb2YgbiYmdm9pZCAwIT09dD9yKG4pOiJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKFsiZXhwb3J0cyJdLHIpOnIoZS5vcHBlbmhlaW1lcj1lLm9wcGVuaGVpbWVyfHx7fSl9KHRoaXMsZnVuY3Rpb24oZSl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQoZSl7cmV0dXJuIHIucmVwbGFjZSgie3tUSVRMRX19IixlLnRpdGxlKX1mdW5jdGlvbiBuKGUpe2UuZG9jdW1lbnRFbGVtZW50LmlubmVySFRNTD10KGUpfXZhciByPSc8aGVhZD48bWV0YSBjaGFyc2V0PXV0Zi04PjxtZXRhIG5hbWU9dmlld3BvcnQgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLGluaXRpYWwtc2NhbGU9MSxtYXhpbXVtLXNjYWxlPTEsdXNlci1zY2FsYWJsZT1ubyI+PHRpdGxlPnt7VElUTEV9fTwvdGl0bGU+PHN0eWxlPmJvZHksaHRtbHtiYWNrZ3JvdW5kOiNlZmVmZWY7Zm9udC1mYW1pbHk6IkhlbHZldGljYSBOZXVlIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtoZWlnaHQ6MTAwJX0jbWFpbi1jb250ZW50e2hlaWdodDoxMDAlfSNtYWluLWNvbnRlbnQ+ZGl2e21heC13aWR0aDo4MDBweDttaW4td2lkdGg6MjAwcHg7bWFyZ2luOjAgYXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfTwvc3R5bGU+PC9oZWFkPjxib2R5PjxkaXYgaWQ9bWFpbi1jb250ZW50PjxkaXY+PGgxPlNvbWV0aGluZyBpbnRlcmZlcmVkIHdpdGggdGhpcyB3ZWJzaXRlIGxvYWRpbmc8L2gxPjxwPlRoaXMgY291bGQgYmUgYSB0ZW1wb3JhcnkgcHJvYmxlbSB3aXRoIHlvdXIgbmV0d29yaywgb3IgZHVlIHRvIHlvdXIgYWRibG9ja2VyPC9wPjxwPlRyeTo8L3A+PHVsPjxsaT5DaGVjayB5b3VyIGludGVybmV0IGNvbm5lY3Rpb24gYW5kIHJlbG9hZCB0aGUgcGFnZTwvbGk+PGxpPklmIHlvdSBhcmUgdXNpbmcgYW4gYWRibG9ja2VyIGRpc2FibGUgaXQgYnkgY2xpY2tpbmcgb24gdGhlIGFkYmxvY2sgaWNvbiBpbiB5b3VyIGJyb3dzZXIgdG9vbGJhcjwvbGk+PGxpPklmIHRoZSBwcm9ibGVtIHBlcnNpc3RzLCBjb25zaWRlciBsZWF2aW5nIGEgbWVzc2FnZSBvbiB0aGUgPGEgaHJlZj1odHRwczovL2ZvcnVtcy5sYW5pay51cy8gdGFyZ2V0PV9CTEFOSz5hZGJsb2NrIHVzZXIgZm9ydW1zPC9hPjwvbGk+PC91bD48L2Rpdj48L2Rpdj48L2JvZHk+JztlLmRpc3BsYXlNZXNzYWdlPXQsZS5yZXBsYWNlQ29udGVudD1uLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0pfSx7fV0sMjM6W2Z1bmN0aW9uKGUsdCxuKXshZnVuY3Rpb24oZSl7InBlcmZvcm1hbmNlImluIGV8fChlLnBlcmZvcm1hbmNlPXt9KTt2YXIgdD1lLnBlcmZvcm1hbmNlO2UucGVyZm9ybWFuY2Uubm93PXQubm93fHx0Lm1vek5vd3x8dC5tc05vd3x8dC5vTm93fHx0LndlYmtpdE5vd3x8RGF0ZS5ub3d8fGZ1bmN0aW9uKCl7cmV0dXJuKG5ldyBEYXRlKS5nZXRUaW1lKCl9fShzZWxmKX0se31dLDI0OltmdW5jdGlvbihlLHQsbil7dC5leHBvcnRzPVsiY29tIiwibmV0IiwiZnIiLCJjby51ayIsImRlIiwidHYiLCJ0b2RheSIsIm9yZyIsImluZm8iLCJpZSIsImJhIiwiZ2ciXX0se31dLDI1OltmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPWUoMjYpLG89e307by5ydWxlcz1lKDI0KS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJue3J1bGU6ZSxzdWZmaXg6ZS5yZXBsYWNlKC9eKFwqXC58XCEpLywiIiksd2lsZGNhcmQ6IioiPT09ZS5jaGFyQXQoMCksZXhjZXB0aW9uOiIhIj09PWUuY2hhckF0KDApfX0pLG8uZW5kc1dpdGg9ZnVuY3Rpb24oZSx0KXtyZXR1cm4tMSE9PWUuaW5kZXhPZih0LGUubGVuZ3RoLXQubGVuZ3RoKX0sby5maW5kUnVsZT1mdW5jdGlvbihlKXt2YXIgdD1yLnRvQVNDSUkoZSk7cmV0dXJuIG8ucnVsZXMucmVkdWNlKGZ1bmN0aW9uKGUsbil7dmFyIGk9ci50b0FTQ0lJKG4uc3VmZml4KTtyZXR1cm4gby5lbmRzV2l0aCh0LCIuIitpKXx8dD09PWk/bjplfSxudWxsKX0sbi5lcnJvckNvZGVzPXtET01BSU5fVE9PX1NIT1JUOiJEb21haW4gbmFtZSB0b28gc2hvcnQuIixET01BSU5fVE9PX0xPTkc6IkRvbWFpbiBuYW1lIHRvbyBsb25nLiBJdCBzaG91bGQgYmUgbm8gbW9yZSB0aGFuIDI1NSBjaGFycy4iLExBQkVMX1NUQVJUU19XSVRIX0RBU0g6IkRvbWFpbiBuYW1lIGxhYmVsIGNhbiBub3Qgc3RhcnQgd2l0aCBhIGRhc2guIixMQUJFTF9FTkRTX1dJVEhfREFTSDoiRG9tYWluIG5hbWUgbGFiZWwgY2FuIG5vdCBlbmQgd2l0aCBhIGRhc2guIixMQUJFTF9UT09fTE9ORzoiRG9tYWluIG5hbWUgbGFiZWwgc2hvdWxkIGJlIGF0IG1vc3QgNjMgY2hhcnMgbG9uZy4iLExBQkVMX1RPT19TSE9SVDoiRG9tYWluIG5hbWUgbGFiZWwgc2hvdWxkIGJlIGF0IGxlYXN0IDEgY2hhcmFjdGVyIGxvbmcuIixMQUJFTF9JTlZBTElEX0NIQVJTOiJEb21haW4gbmFtZSBsYWJlbCBjYW4gb25seSBjb250YWluIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIG9yIGRhc2hlcy4ifSxvLnZhbGlkYXRlPWZ1bmN0aW9uKGUpe3ZhciB0PXIudG9BU0NJSShlKTtpZih0Lmxlbmd0aDwxKXJldHVybiJET01BSU5fVE9PX1NIT1JUIjtpZih0Lmxlbmd0aD4yNTUpcmV0dXJuIkRPTUFJTl9UT09fTE9ORyI7Zm9yKHZhciBuLG89dC5zcGxpdCgiLiIpLGk9MDtpPG8ubGVuZ3RoOysraSl7aWYobj1vW2ldLCFuLmxlbmd0aClyZXR1cm4iTEFCRUxfVE9PX1NIT1JUIjtpZihuLmxlbmd0aD42MylyZXR1cm4iTEFCRUxfVE9PX0xPTkciO2lmKCItIj09PW4uY2hhckF0KDApKXJldHVybiJMQUJFTF9TVEFSVFNfV0lUSF9EQVNIIjtpZigiLSI9PT1uLmNoYXJBdChuLmxlbmd0aC0xKSlyZXR1cm4iTEFCRUxfRU5EU19XSVRIX0RBU0giO2lmKCEvXlthLXowLTlcLV0rJC8udGVzdChuKSlyZXR1cm4iTEFCRUxfSU5WQUxJRF9DSEFSUyJ9fSxuLnBhcnNlPWZ1bmN0aW9uKGUpe2lmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJEb21haW4gbmFtZSBtdXN0IGJlIGEgc3RyaW5nLiIpO3ZhciB0PWUuc2xpY2UoMCkudG9Mb3dlckNhc2UoKTsiLiI9PT10LmNoYXJBdCh0Lmxlbmd0aC0xKSYmKHQ9dC5zbGljZSgwLHQubGVuZ3RoLTEpKTt2YXIgaT1vLnZhbGlkYXRlKHQpO2lmKGkpcmV0dXJue2lucHV0OmUsZXJyb3I6e21lc3NhZ2U6bi5lcnJvckNvZGVzW2ldLGNvZGU6aX19O3ZhciBhPXtpbnB1dDplLHRsZDpudWxsLHNsZDpudWxsLGRvbWFpbjpudWxsLHN1YmRvbWFpbjpudWxsLGxpc3RlZDohMX0sYz10LnNwbGl0KCIuIik7aWYoImxvY2FsIj09PWNbYy5sZW5ndGgtMV0pcmV0dXJuIGE7dmFyIHU9ZnVuY3Rpb24oKXtyZXR1cm4veG4tLS8udGVzdCh0KT8oYS5kb21haW4mJihhLmRvbWFpbj1yLnRvQVNDSUkoYS5kb21haW4pKSxhLnN1YmRvbWFpbiYmKGEuc3ViZG9tYWluPXIudG9BU0NJSShhLnN1YmRvbWFpbikpLGEpOmF9LHM9by5maW5kUnVsZSh0KTtpZighcylyZXR1cm4gYy5sZW5ndGg8Mj9hOihhLnRsZD1jLnBvcCgpLGEuc2xkPWMucG9wKCksYS5kb21haW49W2Euc2xkLGEudGxkXS5qb2luKCIuIiksYy5sZW5ndGgmJihhLnN1YmRvbWFpbj1jLnBvcCgpKSx1KCkpO2EubGlzdGVkPSEwO3ZhciBsPXMuc3VmZml4LnNwbGl0KCIuIiksZD1jLnNsaWNlKDAsYy5sZW5ndGgtbC5sZW5ndGgpO3JldHVybiBzLmV4Y2VwdGlvbiYmZC5wdXNoKGwuc2hpZnQoKSksZC5sZW5ndGg/KHMud2lsZGNhcmQmJmwudW5zaGlmdChkLnBvcCgpKSxkLmxlbmd0aD8oYS50bGQ9bC5qb2luKCIuIiksYS5zbGQ9ZC5wb3AoKSxhLmRvbWFpbj1bYS5zbGQsYS50bGRdLmpvaW4oIi4iKSxkLmxlbmd0aCYmKGEuc3ViZG9tYWluPWQuam9pbigiLiIpKSx1KCkpOnUoKSk6dSgpfSxuLmdldD1mdW5jdGlvbihlKXtyZXR1cm4gZT9uLnBhcnNlKGUpLmRvbWFpbnx8bnVsbDpudWxsfSxuLmlzVmFsaWQ9ZnVuY3Rpb24oZSl7dmFyIHQ9bi5wYXJzZShlKTtyZXR1cm4gQm9vbGVhbih0LmRvbWFpbiYmdC5saXN0ZWQpfX0sezI0OjI0LDI2OjI2fV0sMjY6W2Z1bmN0aW9uKGUsdCxuKXsoZnVuY3Rpb24oZSl7IWZ1bmN0aW9uKHIpe2Z1bmN0aW9uIG8oZSl7dGhyb3cgbmV3IFJhbmdlRXJyb3IoaltlXSl9ZnVuY3Rpb24gaShlLHQpe2Zvcih2YXIgbj1lLmxlbmd0aCxyPVtdO24tLTspcltuXT10KGVbbl0pO3JldHVybiByfWZ1bmN0aW9uIGEoZSx0KXt2YXIgbj1lLnNwbGl0KCJAIikscj0iIjtyZXR1cm4gbi5sZW5ndGg+MSYmKHI9blswXSsiQCIsZT1uWzFdKSxlPWUucmVwbGFjZShJLCIuIikscitpKGUuc3BsaXQoIi4iKSx0KS5qb2luKCIuIil9ZnVuY3Rpb24gYyhlKXtmb3IodmFyIHQsbixyPVtdLG89MCxpPWUubGVuZ3RoO288aTspdD1lLmNoYXJDb2RlQXQobysrKSx0Pj01NTI5NiYmdDw9NTYzMTkmJm88aT8obj1lLmNoYXJDb2RlQXQobysrKSw1NjMyMD09KDY0NTEyJm4pP3IucHVzaCgoKDEwMjMmdCk8PDEwKSsoMTAyMyZuKSs2NTUzNik6KHIucHVzaCh0KSxvLS0pKTpyLnB1c2godCk7cmV0dXJuIHJ9ZnVuY3Rpb24gdShlKXtyZXR1cm4gaShlLGZ1bmN0aW9uKGUpe3ZhciB0PSIiO3JldHVybiBlPjY1NTM1JiYoZS09NjU1MzYsdCs9SChlPj4+MTAmMTAyM3w1NTI5NiksZT01NjMyMHwxMDIzJmUpLHQrPUgoZSl9KS5qb2luKCIiKX1mdW5jdGlvbiBzKGUpe3JldHVybiBlLTQ4PDEwP2UtMjI6ZS02NTwyNj9lLTY1OmUtOTc8MjY/ZS05NzpFfWZ1bmN0aW9uIGwoZSx0KXtyZXR1cm4gZSsyMis3NSooZTwyNiktKCgwIT10KTw8NSl9ZnVuY3Rpb24gZChlLHQsbil7dmFyIHI9MDtmb3IoZT1uP2soZS9SKTplPj4xLGUrPWsoZS90KTtlPk4qTz4+MTtyKz1FKWU9ayhlL04pO3JldHVybiBrKHIrKE4rMSkqZS8oZStUKSl9ZnVuY3Rpb24gZihlKXt2YXIgdCxuLHIsaSxhLGMsbCxmLHAsaCxnPVtdLHY9ZS5sZW5ndGgsdz0wLGI9QSxfPUM7Zm9yKG49ZS5sYXN0SW5kZXhPZihMKSxuPDAmJihuPTApLHI9MDtyPG47KytyKWUuY2hhckNvZGVBdChyKT49MTI4JiZvKCJub3QtYmFzaWMiKSxnLnB1c2goZS5jaGFyQ29kZUF0KHIpKTtmb3IoaT1uPjA/bisxOjA7aTx2Oyl7Zm9yKGE9dyxjPTEsbD1FO2k+PXYmJm8oImludmFsaWQtaW5wdXQiKSxmPXMoZS5jaGFyQ29kZUF0KGkrKykpLChmPj1FfHxmPmsoKHktdykvYykpJiZvKCJvdmVyZmxvdyIpLHcrPWYqYyxwPWw8PV8/UzpsPj1fK08/TzpsLV8sIShmPHApO2wrPUUpaD1FLXAsYz5rKHkvaCkmJm8oIm92ZXJmbG93IiksYyo9aDt0PWcubGVuZ3RoKzEsXz1kKHctYSx0LDA9PWEpLGsody90KT55LWImJm8oIm92ZXJmbG93IiksYis9ayh3L3QpLHclPXQsZy5zcGxpY2UodysrLDAsYil9cmV0dXJuIHUoZyl9ZnVuY3Rpb24gcChlKXt2YXIgdCxuLHIsaSxhLHUscyxmLHAsaCxnLHYsdyxiLF8sbT1bXTtmb3IoZT1jKGUpLHY9ZS5sZW5ndGgsdD1BLG49MCxhPUMsdT0wO3U8djsrK3UpKGc9ZVt1XSk8MTI4JiZtLnB1c2goSChnKSk7Zm9yKHI9aT1tLmxlbmd0aCxpJiZtLnB1c2goTCk7cjx2Oyl7Zm9yKHM9eSx1PTA7dTx2OysrdSkoZz1lW3VdKT49dCYmZzxzJiYocz1nKTtmb3Iodz1yKzEscy10PmsoKHktbikvdykmJm8oIm92ZXJmbG93Iiksbis9KHMtdCkqdyx0PXMsdT0wO3U8djsrK3UpaWYoZz1lW3VdLGc8dCYmKytuPnkmJm8oIm92ZXJmbG93IiksZz09dCl7Zm9yKGY9bixwPUU7aD1wPD1hP1M6cD49YStPP086cC1hLCEoZjxoKTtwKz1FKV89Zi1oLGI9RS1oLG0ucHVzaChIKGwoaCtfJWIsMCkpKSxmPWsoXy9iKTttLnB1c2goSChsKGYsMCkpKSxhPWQobix3LHI9PWkpLG49MCwrK3J9KytuLCsrdH1yZXR1cm4gbS5qb2luKCIiKX1mdW5jdGlvbiBoKGUpe3JldHVybiBhKGUsZnVuY3Rpb24oZSl7cmV0dXJuIFAudGVzdChlKT9mKGUuc2xpY2UoNCkudG9Mb3dlckNhc2UoKSk6ZX0pfWZ1bmN0aW9uIGcoZSl7cmV0dXJuIGEoZSxmdW5jdGlvbihlKXtyZXR1cm4geC50ZXN0KGUpPyJ4bi0tIitwKGUpOmV9KX12YXIgdj0ib2JqZWN0Ij09dHlwZW9mIG4mJm4mJiFuLm5vZGVUeXBlJiZuLHc9Im9iamVjdCI9PXR5cGVvZiB0JiZ0JiYhdC5ub2RlVHlwZSYmdCxiPSJvYmplY3QiPT10eXBlb2YgZSYmZTtiLmdsb2JhbCE9PWImJmIud2luZG93IT09YiYmYi5zZWxmIT09Ynx8KHI9Yik7dmFyIF8sbSx5PTIxNDc0ODM2NDcsRT0zNixTPTEsTz0yNixUPTM4LFI9NzAwLEM9NzIsQT0xMjgsTD0iLSIsUD0vXnhuLS0vLHg9L1teXHgyMC1ceDdFXS8sST0vW1x4MkVcdTMwMDJcdUZGMEVcdUZGNjFdL2csaj17b3ZlcmZsb3c6Ik92ZXJmbG93OiBpbnB1dCBuZWVkcyB3aWRlciBpbnRlZ2VycyB0byBwcm9jZXNzIiwibm90LWJhc2ljIjoiSWxsZWdhbCBpbnB1dCA+PSAweDgwIChub3QgYSBiYXNpYyBjb2RlIHBvaW50KSIsImludmFsaWQtaW5wdXQiOiJJbnZhbGlkIGlucHV0In0sTj1FLVMsaz1NYXRoLmZsb29yLEg9U3RyaW5nLmZyb21DaGFyQ29kZTtpZihfPXt2ZXJzaW9uOiIxLjQuMSIsdWNzMjp7ZGVjb2RlOmMsZW5jb2RlOnV9LGRlY29kZTpmLGVuY29kZTpwLHRvQVNDSUk6Zyx0b1VuaWNvZGU6aH0sdiYmdylpZih0LmV4cG9ydHM9PXYpdy5leHBvcnRzPV87ZWxzZSBmb3IobSBpbiBfKV8uaGFzT3duUHJvcGVydHkobSkmJih2W21dPV9bbV0pO2Vsc2Ugci5wdW55Y29kZT1ffSh0aGlzKX0pLmNhbGwodGhpcywidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93Ont9KX0se31dLDI3OltmdW5jdGlvbihlLHQsbil7IWZ1bmN0aW9uKGUscil7Im9iamVjdCI9PXR5cGVvZiBuJiZ2b2lkIDAhPT10P3Iobik6ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoWyJleHBvcnRzIl0scik6cihlLnVsb2c9ZS51bG9nfHx7fSl9KHRoaXMsZnVuY3Rpb24oZSl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQoZSl7dmFyIHQ9T2JqZWN0LmNyZWF0ZShjb25zb2xlKTtbImFzc2VydCIsInRyYWNlIiwiZGVidWciLCJsb2ciLCJpbmZvIiwid2FybiIsImVycm9yIl0uZm9yRWFjaChmdW5jdGlvbihuKXtlW25dPXRbbl19KX1mdW5jdGlvbiBuKGUsbil7dmFyIHI9aVtuXTt2b2lkIDAhPT1yJiYodChlKSxyPjAmJihlLmFzc2VydD1mdW5jdGlvbigpe30pLHI+NSYmKGUudHJhY2U9ZnVuY3Rpb24oKXt9KSxyPjEwJiYoZS5kZWJ1Zz1mdW5jdGlvbigpe30pLHI+MjAmJihlLmxvZz1mdW5jdGlvbigpe30pLHI+MzAmJihlLmluZm89ZnVuY3Rpb24oKXt9KSxyPjQwJiYoZS53YXJuPWZ1bmN0aW9uKCl7fSkscj41MCYmKGUuZXJyb3I9ZnVuY3Rpb24oKXt9KSl9ZnVuY3Rpb24gcihlLHQpe3Q9dHx8e30sbihlLHQubGV2ZWx8fCJkZWJ1ZyIpfWZ1bmN0aW9uIG8oZSl7dmFyIHQ9T2JqZWN0LmNyZWF0ZShjb25zb2xlKTtyZXR1cm4gcih0LGUpLHR9dmFyIGk9e2FsbDowLHRyYWNlOjUsZGVidWc6MTAsbG9nOjIwLGluZm86MzAsd2Fybjo0MCxlcnJvcjo1MCxub25lOjFlM30sYT1vKCk7ZS5MRVZFTFM9aSxlLnNldExldmVsPW4sZS5jb25maWd1cmU9cixlLmNyZWF0ZT1vLGUubG9nZ2VyPWEsT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSl9LHt9XX0se30sWzFdKTs="));</script>

<script>
  if(!window.cnxCommonUtils) {
    window.cnxCommonUtils = {
      getHref: function() {
        return document.location.href;
      }
    }
  }
</script>
<script async='async' src='https://cdn.connatix.com/min/connatix.handler.dfp.min.js'></script>
</body>
</html>
