{"version":3,"sources":["../../../../src/app/js/loads/wind.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAKA,WAAS,2BAA2B,CAAC,QAAQ,EAA6B;QAA3B,gBAAgB,yDAAG,MAAM;;AACtE,QAAM,GAAG,GAAG,6BAAgB,gBAAgB,CAAC,CAAC,aAAa,CAAC;AAC5D,QAAM,OAAO,GAAG;AACd,cAAQ,EAAR,QAAQ;AACR,eAAS,EAAE,CAAC,GAAG,CAAC;KACjB,CAAC;AACF,WAAO,wBAXA,SAAS,EAWC,GAAG,EAAE,OAAO,CAAC,CAAC;GAChC;;AAED,WAAS,kCAAkC,CAAC,QAAQ,EAAE;AACpD,QAAM,GAAG,GAAG,2FAA2F,CAAC;AACxG,QAAM,OAAO,GAAG;AACd,cAAQ,EAAR,QAAQ;AACR,eAAS,EAAE,CAAC,GAAG,CAAC;KACjB,CAAC;AACF,WAAO,wBApBA,SAAS,EAoBC,GAAG,EAAE,OAAO,CAAC,CAAC;GAChC;;AAED,WAAS,yBAAyB,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE;AACnE,QAAI,SAAS,YAAA,CAAC;AACd,QAAI,gBAAgB,KAAK,MAAM,EAAE;AAC/B,eAAS,GAAG,6BAAgB,gBAAgB,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC;KACzE,MAAM;AACL,eAAS,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;KAC3E;AACD,QAAM,OAAO,GAAG,EAAE,QAAQ,EAAR,QAAQ,EAAE,CAAC;AAC7B,WAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,UAAC,QAAQ,EAAK;AAChD,aAAO,wBAhCS,wBAAwB,EAgCR,QAAQ,EAAE,OAAO,CAAC,CAAC;KACpD,CAAC,CAAC;GACJ;;AAED,WAAS,4CAA4C,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE;AACjG,QAAI,gBAAgB,KAAK,MAAM,EAAE;;AAC/B,YAAM,SAAS,GAAG,6BAAgB,gBAAgB,CAAC,CAAC,YAAY,CAAC,+BAA+B,CAAC;AACjG,YAAM,OAAO,GAAG,EAAE,QAAQ,EAAR,QAAQ,EAAE,CAAC;;AAE7B;aAAO,SAAS,CAAC,GAAG,CAAC,UAAC,QAAQ,EAAK;AACjC,mBAAO,wBA1CO,wBAAwB,EA0CN,QAAQ,EAAE,OAAO,CAAC,CAAC;WACpD,CAAC;UAAC;;;;KACJ;GACF;;AAED,WAAS,0BAA0B,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE;AACpE,QAAI,GAAG,YAAA,CAAC;AACR,YAAQ,gBAAgB;AACtB,WAAK,MAAM;AACT,WAAG,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,kBAAkB,CAAC;AACrD,cAAM;AAAA,AACR,WAAK,MAAM;AACT,WAAG,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,kBAAkB,CAAC;AACrD,cAAM;AAAA,AACR,WAAK,MAAM;AACT,WAAG,GAAG,6BAAgB,gBAAgB,CAAC,CAAC,YAAY,CAAC,kBAAkB,CAAC;AAAA,KAC3E;AACD,QAAM,OAAO,GAAG;AACd,cAAQ,EAAR,QAAQ;AACR,eAAS,EAAE,CAAC,GAAG,CAAC;KACjB,CAAC;AACF,WAAO,wBA/DA,SAAS,EA+DC,GAAG,EAAE,OAAO,CAAC,CAAC;GAChC;;AAED,WAAS,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,YAAY,EAAE;AAChF,QAAI,GAAG,YAAA,CAAC;AACR,QAAM,OAAO,GAAG,EAAE,QAAQ,EAAR,QAAQ,EAAE,CAAC;;AAE7B,QAAI,gBAAgB,KAAK,MAAM,EAAE;AAC/B,UAAI,YAAY,EAAE;AAChB,WAAG,GAAG,6BAAgB,gBAAgB,CAAC,CAAC,YAAY,CAAC,oBAAoB,CAAC;OAC3E,MAAM;AACL,WAAG,GAAG,6BAAgB,gBAAgB,CAAC,CAAC,YAAY,CAAC,kBAAkB,CAAC;OACzE;KACF,MAAM;AACL,SAAG,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC;KAChE;;AAED,WAAO,wBAhFW,wBAAwB,EAgFV,GAAG,EAAE,OAAO,CAAC,CAAC;GAC/C;;AAEM,WAAS,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE;AAClF,WAAO,SAlFA,OAAO,CAkFG,GAAG,EAClB,2BAA2B,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EACvD,kCAAkC,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAC9D,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,CAAC,EACvE,0BAA0B,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,CAAC,EAC5D,4CAA4C,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,CAAC,EACzF,kBAzFK,gBAAgB,EAyFJ,QAAQ,EAAE,IAAI,CAAC,4BAC7B,yBAAyB,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,CAAC,GAC9D,CAAC;GACJ;;AAEM,WAAS,uBAAuB,CAAC,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE;AAC1E,QAAI,gBAAgB,KAAK,MAAM,EAAE;AAC/B,cAAQ,SAAS;AACf,aAAK,CAAC;AACJ,iBAAO,6GAA6G,CAAC;AAAA,AACvH,aAAK,CAAC;AACJ,iBAAO,6GAA6G,CAAC;AAAA,AACvH,aAAK,CAAC,CAAC;AACP,aAAK,CAAC;AACJ,iBAAO,6GAA6G,CAAC;AAAA,OACxH;KACF,MAAM;AACL,UAAI,KAAK,KAAK,QAAQ,EAAE;AACtB,gBAAQ,SAAS;AACf,eAAK,CAAC;AACJ,iCAAmB,gBAAgB,gEAA6D;AAAA,AAClG,eAAK,CAAC;AACJ,iCAAmB,gBAAgB,gEAA6D;AAAA,AAClG,eAAK,CAAC;AACJ,iCAAmB,gBAAgB,gEAA6D;AAAA,AAClG,eAAK,CAAC;AACJ,iCAAmB,gBAAgB,gEAA6D;AAAA,SACnG;OACF,MAAM;AACL,gBAAQ,SAAS;AACf,eAAK,CAAC;AACJ,iCAAmB,gBAAgB,gEAA6D;AAAA,AAClG,eAAK,CAAC;AACJ,iCAAmB,gBAAgB,gEAA6D;AAAA,AAClG,eAAK,CAAC;AACJ,iCAAmB,gBAAgB,gEAA6D;AAAA,AAClG,eAAK,CAAC;AACJ,iCAAmB,gBAAgB,gEAA6D;AAAA,SACnG;OACF;KACF;GACF;;AAEM,WAAS,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,KAAK,EAAE;AACjF,QAAI,QAAQ,wDACV,WAAW,KAAK,IAAI,GAAG,MAAM,GAAG,OAAO,CAAA,mJACqG,gBAAgB,eAAY,CAAC;AAC3K,YAAQ,SAAS;AACf,WAAK,CAAC;AACJ,gBAAQ,IACN,kJAAkJ,CAAC;AACrJ,cAAM;AAAA,AACR,WAAK,CAAC;AACJ,gBAAQ,IACN,iJAAiJ,CAAC;AACpJ,cAAM;AAAA,AACR,WAAK,CAAC;AACJ,gBAAQ,IACN,oJAAoJ,CAAC;AACvJ,cAAM;AAAA,AACR,WAAK,CAAC;AACJ,YAAI,gBAAgB,KAAK,MAAM,EAAE;AAC/B,kBAAQ,IACN,oJAAoJ,CAAC;SACxJ,MAAM;AACL,cAAI,KAAK,KAAK,QAAQ,EAAE;AACtB,oBAAQ,IACN,qJAAqJ,CAAC;WACzJ,MAAM;AACL,oBAAQ,IACN,qJAAqJ,CAAC;WACzJ;SACF;AACD,cAAM;AAAA,KACT;AACD,QAAI,gBAAgB,KAAK,MAAM,EAAE;AAC/B,cAAQ,IACN,mJAAmJ,CAAC;KACvJ;AACD,WAAO,QAAQ,CAAC;GACjB;;AAEM,WAAS,uBAAuB,CACrC,SAAS,EACT,gBAAgB,EAChB,6BAA6B,EAC7B,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,IAAI,EACJ;AACA,WAAO,aAnLA,OAAO,CAmLO,UAAC,OAAO,EAAE,MAAM,EAAK;;;;;;;;;;AAUxC,UAAM,KAAK,GAAG,gBAAgB,KAAK,MAAM,CAAC;AAC1C,UAAM,KAAK,GAAG,gBAAgB,KAAK,MAAM,CAAC;AAC1C,UAAM,KAAK,GAAG,gBAAgB,KAAK,MAAM,CAAC;;AAE1C,UAAM,eAAe,GAAG;AACtB,SAAC,sEAAoE,gBAAgB,mBAAgB;AACrG,SAAC,kEAAgE,gBAAgB,oFAAiF;AAClK,SAAC,kEAAgE,gBAAgB,0IAC/E,KAAK,GAAG,IAAI,GAAG,KAAK,IAAI,KAAK,GAAG,IAAI,GAAG,EAAE,CAAA,QACtC;AACL,SAAC,kEAAgE,gBAAgB,gHAC/E,KAAK,GAAG,IAAI,GAAG,KAAK,IAAI,KAAK,GAAG,IAAI,GAAG,EAAE,CAAA,QACtC;OACN,CAAC;;AAEF,UAAI,IAAI,YAAA,CAAC;AACT,cAAQ,SAAS;AACf,aAAK,CAAC;AACJ,cAAI,6BAA6B,EAAE;AACjC,gBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;WAC7B,MAAM;AACL,gBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;WAC7B;AACD,iBAAO,CAAC,IAAI,CAAC,CAAC;AACd,gBAAM;AAAA,AACR,aAAK,CAAC;AACJ,cAAI,SAAS,IAAI,GAAG,EAAE;AACpB,gBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;WAC7B,MAAM,IAAI,SAAS,IAAI,GAAG,IAAI,YAAY,EAAE;AAC3C,gBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;WAC7B,MAAM,IAAI,6BAA6B,EAAE;AACxC,gBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;WAC7B,MAAM;AACL,gBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;WAC7B;AACD,iBAAO,CAAC,IAAI,CAAC,CAAC;AACd,gBAAM;AAAA,AACR,aAAK,CAAC;;;;;AAKJ,uBAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAC,QAAQ,EAAK;gBAC5D,KAAK,GAAK,QAAQ,CAAlB,KAAK;;AACb,gBAAM,oBAAoB,GAAG,OAAO,KAAK,KAAK,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;;AAEnF,gBAAI,oBAAoB,IAAI,GAAG,EAAE;AAC/B,kBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;aAC7B,MAAM,IAAI,oBAAoB,IAAI,GAAG,IAAI,YAAY,EAAE;AACtD,kBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;aAC7B,MAAM,IAAI,SAAS,IAAI,GAAG,EAAE;AAC3B,kBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;aAC7B,MAAM,IAAI,SAAS,IAAI,GAAG,IAAI,YAAY,EAAE;AAC3C,kBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;aAC7B,MAAM,IAAI,6BAA6B,EAAE;AACxC,kBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;aAC7B,MAAM;AACL,kBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;aAC7B;;AAED,mBAAO,CAAC,IAAI,CAAC,CAAC;WACf,CAAC,CAAC;AACH,gBAAM;AAAA,AACR,aAAK,CAAC;AACJ,cAAI,SAAS,IAAI,GAAG,EAAE;AACpB,gBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;WAC7B,MAAM,IAAI,SAAS,IAAI,GAAG,IAAI,YAAY,EAAE;AAC3C,gBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;WAC7B,MAAM,IAAI,6BAA6B,EAAE;AACxC,gBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;WAC7B,MAAM;AACL,gBAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;WAC7B;AACD,iBAAO,CAAC,IAAI,CAAC,CAAC;AACd,gBAAM;AAAA,OACT;KACF,CAAC,CAAC;GACJ","file":"wind.js","sourcesContent":["import { esriQuery, esriIdentifyImageService } from 'js/utils/esriQueries';\nimport { query_state_zone } from 'js/loads/other';\nimport { Promise as bbPromise } from 'promise';\nimport standardsConfig from '../standards.config';\n\nfunction query_hurricane_wind_debris(geometry, standardsVersion = '7-10') {\n const url = standardsConfig[standardsVersion].windDebrisUrl;\n const options = {\n geometry,\n outFields: ['*'],\n };\n return esriQuery(url, options);\n}\n\nfunction query_hurricane_wind_debris_1_mile(geometry) {\n const url = 'https://gis.asce.org/arcgis/rest/services/ASCE/ASCE_Hurricane_WindBorneDebris/MapServer/4';\n const options = {\n geometry,\n outFields: ['*'],\n };\n return esriQuery(url, options);\n}\n\nfunction identify_wind_reoccurence(geometry, load, standardsVersion) {\n let endpoints;\n if (standardsVersion === '7-22') {\n endpoints = standardsConfig[standardsVersion].windServices.reoccurences;\n } else {\n endpoints = load.layers.queryDictionary.windReoccurence[standardsVersion];\n }\n const options = { geometry };\n return Object.values(endpoints).map((endpoint) => {\n return esriIdentifyImageService(endpoint, options);\n });\n}\n\nfunction identify_special_wind_region_mosaic_datasets(geometry, load, standardsVersion, riskLevel) {\n if (standardsVersion === '7-22') {\n const endpoints = standardsConfig[standardsVersion].windServices.specialWindRegionMosaicDatasets;\n const options = { geometry };\n\n return endpoints.map((endpoint) => {\n return esriIdentifyImageService(endpoint, options);\n });\n }\n}\n\nfunction identify_special_wind_zone(geometry, load, standardsVersion) {\n let url;\n switch (standardsVersion) {\n case '7-10':\n url = load.layers.queryDictionary.specialZoneURL2010;\n break;\n case '7-16':\n url = load.layers.queryDictionary.specialZoneURL2016;\n break;\n case '7-22':\n url = standardsConfig[standardsVersion].windServices.specialWindRegions;\n }\n const options = {\n geometry,\n outFields: ['*'],\n };\n return esriQuery(url, options);\n}\n\nfunction identify_wind(geometry, load, standardsVersion, riskLevel, isPRGeometry) {\n let url;\n const options = { geometry };\n\n if (standardsVersion === '7-22') {\n if (isPRGeometry) {\n url = standardsConfig[standardsVersion].windServices.windServicePRDataset;\n } else {\n url = standardsConfig[standardsVersion].windServices.windServiceDataset;\n }\n } else {\n url = load.layers.queryDictionary[standardsVersion][riskLevel];\n }\n\n return esriIdentifyImageService(url, options);\n}\n\nexport function windQuery(geometry, load, riskLevel, standardsVersion, isPRDataset) {\n return bbPromise.all([\n query_hurricane_wind_debris(geometry, standardsVersion),\n query_hurricane_wind_debris_1_mile(geometry, standardsVersion),\n identify_wind(geometry, load, standardsVersion, riskLevel, isPRDataset),\n identify_special_wind_zone(geometry, load, standardsVersion),\n identify_special_wind_region_mosaic_datasets(geometry, load, standardsVersion, riskLevel),\n query_state_zone(geometry, load),\n ...identify_wind_reoccurence(geometry, load, standardsVersion),\n ]);\n}\n\nexport function determineWindDataSource(standardsVersion, riskLevel, state) {\n if (standardsVersion === '7-10') {\n switch (riskLevel) {\n case 1:\n return 'ASCE/SEI 7-10, Fig. 26.5-1C and Figs. CC-1–CC-4, and Section 26.5.2, incorporating errata of March 12, 2014';\n case 2:\n return 'ASCE/SEI 7-10, Fig. 26.5-1A and Figs. CC-1–CC-4, and Section 26.5.2, incorporating errata of March 12, 2014';\n case 3:\n case 4:\n return 'ASCE/SEI 7-10, Fig. 26.5-1B and Figs. CC-1–CC-4, and Section 26.5.2, incorporating errata of March 12, 2014';\n }\n } else {\n if (state === 'Hawaii') {\n switch (riskLevel) {\n case 1:\n return `ASCE/SEI ${standardsVersion}, Fig. 26.5-2A and Figs. CC.2-1–CC.2-4, and Section 26.5.2`;\n case 2:\n return `ASCE/SEI ${standardsVersion}, Fig. 26.5-2B and Figs. CC.2-1–CC.2-4, and Section 26.5.2`;\n case 3:\n return `ASCE/SEI ${standardsVersion}, Fig. 26.5-2C and Figs. CC.2-1–CC.2-4, and Section 26.5.2`;\n case 4:\n return `ASCE/SEI ${standardsVersion}, Fig. 26.5-2D and Figs. CC.2-1–CC.2-4, and Section 26.5.2`;\n }\n } else {\n switch (riskLevel) {\n case 1:\n return `ASCE/SEI ${standardsVersion}, Fig. 26.5-1A and Figs. CC.2-1–CC.2-4, and Section 26.5.2`;\n case 2:\n return `ASCE/SEI ${standardsVersion}, Fig. 26.5-1B and Figs. CC.2-1–CC.2-4, and Section 26.5.2`;\n case 3:\n return `ASCE/SEI ${standardsVersion}, Fig. 26.5-1C and Figs. CC.2-1–CC.2-4, and Section 26.5.2`;\n case 4:\n return `ASCE/SEI ${standardsVersion}, Fig. 26.5-1D and Figs. CC.2-1–CC.2-4, and Section 26.5.2`;\n }\n }\n }\n}\n\nexport function determineWindNote(riskLevel, standardsVersion, measurement, state) {\n let windNote = `Value provided is 3-second gust wind speeds at ${\n measurement === 'si' ? '10 m' : '33 ft'\n } above ground for Exposure C Category, based on linear interpolation between contours. Wind speeds are interpolated in accordance with the ${standardsVersion} Standard.`;\n switch (riskLevel) {\n case 1:\n windNote +=\n ' Wind speeds correspond to approximately a 15% probability of exceedance in 50 years (annual exceedance probability = 0.00333, MRI = 300 years).';\n break;\n case 2:\n windNote +=\n ' Wind speeds correspond to approximately a 7% probability of exceedance in 50 years (annual exceedance probability = 0.00143, MRI = 700 years).';\n break;\n case 3:\n windNote +=\n ' Wind speeds correspond to approximately a 3% probability of exceedance in 50 years (annual exceedance probability = 0.000588, MRI = 1,700 years).';\n break;\n case 4:\n if (standardsVersion === '7-10') {\n windNote +=\n ' Wind speeds correspond to approximately a 3% probability of exceedance in 50 years (annual exceedance probability = 0.000588, MRI = 1,700 years).';\n } else {\n if (state === 'Hawaii') {\n windNote +=\n ' Wind speeds correspond to approximately a 1.7% probability of exceedance in 50 years (annual exceedance probability = 0.00033, MRI = 3,000 years).';\n } else {\n windNote +=\n ' Wind speeds correspond to approximately a 1.6% probability of exceedance in 50 years (annual exceedance probability = 0.00033, MRI = 3,000 years).';\n }\n }\n break;\n }\n if (standardsVersion === '7-22') {\n windNote +=\n ' Values for 10-year MRI, 25-year MRI, 50-year MRI and 100-year MRI are Service Level wind speeds, all other wind speeds are Ultimate wind speeds.';\n }\n return windNote;\n}\n\nexport function determineWindDebrisNote(\n riskLevel,\n standardsVersion,\n isWithinHurricaneZoneBoundary,\n isWithinMile,\n windSpeed,\n geometry,\n load\n) {\n return new bbPromise((resolve, reject) => {\n // console.table(\n // [\n // ['Risk level', riskLevel],\n // ['Standards version', standardsVersion],\n // ['Is within boundary?', isWithinBoundary],\n // ['Is within mile?', isWithinMile],\n // ['Wind speed', windSpeed]\n // ]\n // );\n const is710 = standardsVersion === '7-10';\n const is716 = standardsVersion === '7-16';\n const is722 = standardsVersion === '7-22';\n\n const windDebrisNotes = {\n A: `Site is not in a hurricane-prone region as defined in ASCE/SEI ${standardsVersion} Section 26.2.`,\n B: `Site is in a hurricane-prone region as defined in ASCE/SEI ${standardsVersion} Section 26.2. Glazed openings need not be protected against wind-borne debris.`,\n C: `Site is in a hurricane-prone region as defined in ASCE/SEI ${standardsVersion} Section 26.2. Glazed openings in health-care facilities shall be protected against wind-borne debris as specified in Section 26.${\n is710 ? '10' : is716 || is722 ? '12' : ''\n }.3.`,\n D: `Site is in a hurricane-prone region as defined in ASCE/SEI ${standardsVersion} Section 26.2. Glazed openings shall be protected against wind-borne debris as specified in Section 26.${\n is710 ? '10' : is716 || is722 ? '12' : ''\n }.3.`,\n };\n\n let note;\n switch (riskLevel) {\n case 1:\n if (isWithinHurricaneZoneBoundary) {\n note = windDebrisNotes['B'];\n } else {\n note = windDebrisNotes['A'];\n }\n resolve(note);\n break;\n case 2:\n if (windSpeed >= 140) {\n note = windDebrisNotes['D'];\n } else if (windSpeed >= 130 && isWithinMile) {\n note = windDebrisNotes['D'];\n } else if (isWithinHurricaneZoneBoundary) {\n note = windDebrisNotes['B'];\n } else {\n note = windDebrisNotes['A'];\n }\n resolve(note);\n break;\n case 3:\n /** refer to assembla ticket #485\n * the above windSpeed is based on the risk III windspeed map\n * however, this risk level is also dependent risk II windspeed map\n */\n identify_wind(geometry, load, standardsVersion, 2).then((response) => {\n const { value } = response;\n const windSpeedRiskLevelII = typeof value === 'string' ? parseFloat(value) : value;\n\n if (windSpeedRiskLevelII >= 140) {\n note = windDebrisNotes['D'];\n } else if (windSpeedRiskLevelII >= 130 && isWithinMile) {\n note = windDebrisNotes['D'];\n } else if (windSpeed >= 140) {\n note = windDebrisNotes['C'];\n } else if (windSpeed >= 130 && isWithinMile) {\n note = windDebrisNotes['C'];\n } else if (isWithinHurricaneZoneBoundary) {\n note = windDebrisNotes['B'];\n } else {\n note = windDebrisNotes['A'];\n }\n\n resolve(note);\n });\n break;\n case 4:\n if (windSpeed >= 140) {\n note = windDebrisNotes['D'];\n } else if (windSpeed >= 130 && isWithinMile) {\n note = windDebrisNotes['D'];\n } else if (isWithinHurricaneZoneBoundary) {\n note = windDebrisNotes['B'];\n } else {\n note = windDebrisNotes['A'];\n }\n resolve(note);\n break;\n }\n });\n}\n"]}