diff --git a/README.md b/README.md index fb52da9..54ebd8e 100644 --- a/README.md +++ b/README.md @@ -88,6 +88,7 @@ After instantiating a new instance the constructor returns an object that can be | `post-formatting-search` | After the formatting search has returned a result | ```address.events.on("post-formatting-search", function(data){ // ... });```| | `post-reset` | After the demo has been reset | ```address.events.on("post-reset", function(){ // ... });```| | `post-search-type-change` | After the search type has been changed | ```address.events.on("post-search-type-change", function(searchType){ // ... });```| +| `post-country-list-change` | After the country list has been changed | ```address.events.on("post-country-list-change", function(supportedSearchTypes, currentSearchType){ // ... });```| | `post-datasets-update` | To populate the authorized country dataset(s) into the country dataset dropdown | ```address.events.on("post-datasets-update", function(){ // ... });```| | `error-display` | To display error when the selected search type is not supported for the country dataset selected | ```address.events.on("error-display", function (error){ // ... });```| | `request-timeout` | A timeout occurred during the XMLHttpRequest | ```address.events.on("request-timeout", function(xhr){ // ... });```| @@ -109,7 +110,7 @@ By default the API returns the formatted address using a global 7-line layout. T * postal_code * country -However, in your integration you might wish to change "locality" to "city" or "postalCode" to "post code", for example. +However, in your integration you might wish to change "locality" to "city" or "postal_code" to "post code", for example. 1. Access the [_translations.js file](/src/ts/translations.js) diff --git a/dist/css/experian-address-validation.css b/dist/css/experian-address-validation.css index aeb4183..bc65f49 100644 --- a/dist/css/experian-address-validation.css +++ b/dist/css/experian-address-validation.css @@ -238,13 +238,13 @@ input.showing-suggestions { } .picklist-use-entered-option, -.address-picklist div:not(.selected) .what3Words-name { +.address-picklist div:not(.selected) .what3words-name { font-weight: bold; padding-bottom: 0px; } .picklist-use-entered-option, -.address-picklist div:not(.selected) .what3Words-description { +.address-picklist div:not(.selected) .what3words-description { font-style: italic; padding-top: 0px; font-size: 12px; diff --git a/dist/js/address-metadata-display.js b/dist/js/address-metadata-display.js index 05b97ec..8f63832 100644 --- a/dist/js/address-metadata-display.js +++ b/dist/js/address-metadata-display.js @@ -1 +1 @@ -function populateMetadata(e){null!=e.enrichment&&address.getEnrichmentData(e.enrichment);const t=e.result.confidence;if(t&&(document.querySelector(".metadata #confidence-key").innerText="Verified match"===t?"✔":"❌",document.querySelector(".metadata #confidence-value").innerText=t),e.metadata&&e.metadata.address_classification){const t=e.metadata.address_classification.delivery_type;t&&(document.querySelector(".metadata #delivery-type-key").innerText="residential"===t?"🏡":"🏢",document.querySelector(".metadata #delivery-type-value").innerText=t.substring(0,1).toUpperCase()+t.substring(1))}document.querySelector(".metadata #delivery-address-key").innerHTML=e.result.address?'':"",document.querySelector(".metadata #delivery-address-value").innerHTML=e.result.address?Object.values(e.result.address).filter((e=>""!==e)).join(""):"",document.querySelector(".metadata").classList.remove("invisible"),populateAddressAdditionalInfo(address.componentsCollectionMap,document.querySelector("#components-collection")),populateAddressAdditionalInfo(address.metadataCollectionMap,document.querySelector("#metadata-collection"))}function populateAddressAdditionalInfo(e,t,a,d){if(e.size>0){let n=t.getElementsByClassName("content")[0];t.classList.remove("hidden");let s=n;if(a){let e=document.createElement("div");const t=document.createElement("h3");if(t.innerText=a,e.append(t),d){let t=document.createElement("span");t.classList.add("collapsible"),createCollapsibleELement(t,d);let a=document.createElement("div");a.classList.add("content"),a.setAttribute("style","display: none;"),s=a,e.append(t,a)}n.append(e)}populateContent(e,s)}}function createCollapsibleELement(e,t){let a=document.createElement("span");a.innerText="[Hide]",a.classList.add(`hide${t}`),a.classList.add("hidden");let d=document.createElement("span");d.innerText="[Show]",d.classList.add(`show${t}`),e.append(a,d),addCollapsibleEventListener(e,`.hide${t}`,`.show${t}`)}function populateContent(e,t){e.forEach(((e,a)=>{const d=document.createElement("span");let n=document.createElement("br");if("object"==typeof e)d.innerText=`${a}: `,t.append(d,n),addChildElement(Object.entries(e),t,1,!0);else{if(address.tooltipDescriptionMap.has(a)){let t=document.createElement("div");t.classList.add("tooltip"),t.innerText=`${e}`;let n=document.createElement("span");n.classList.add("tooltiptext"),n.innerText=`${address.tooltipDescriptionMap.get(a)}`,t.append(n),d.innerText=`${a}: `,d.append(t)}else d.innerText=`${a}: ${e}`;t.append(d,n)}})),t.append(document.createElement("br"))}function addChildElement(e,t,a,d){for(const[n,s]of e){const e=document.createElement("span");let o=document.createElement("br");if(e.classList.add("tab"),e.setAttribute("style","--spaces: "+2*a+"em;"),"object"==typeof s){let r=a;d&&(e.innerText=`${n}: `,r=a+1,t.append(e,o)),addChildElement(Object.entries(s),t,r,!(Array.isArray(s)&&1===s.length))}else e.innerText=`${n}: ${s}`,t.append(e,o)}}function resetMetadata(){document.querySelector(".metadata #confidence-key").innerText="",document.querySelector(".metadata #confidence-value").innerText="",document.querySelector(".metadata #delivery-type-key").innerText="",document.querySelector(".metadata #delivery-type-value").innerText="",document.querySelector(".metadata #what3words-key").classList.add("hidden"),document.querySelector(".metadata #what3words-value").classList.add("hidden"),document.querySelector(".metadata").classList.add("invisible"),resetMetadataElements(document.getElementById("validated-address-info")),resetMetadataElements(document.getElementById("components-collection"),!0),document.querySelector("#components-collection").classList.add("hidden"),resetMetadataElements(document.getElementById("metadata-collection"),!0),document.querySelector("#metadata-collection").classList.add("hidden"),resetMetadataElements(document.getElementById("enrichment"),!0),document.querySelector("#enrichment").classList.add("hidden"),document.querySelector("#map").classList.add("hidden")}function resetMetadataElements(e,t){t&&(e.querySelector(".hide").classList.add("hidden"),e.querySelector(".show").classList.remove("hidden")),e.querySelectorAll(".content").forEach((e=>{e.style.display=t?"none":"block",t&&(removeElements(e.getElementsByTagName("div")),removeElements(e.getElementsByTagName("span")),removeElements(e.getElementsByTagName("br")),removeElements(e.getElementsByTagName("h3")))}))}function removeElements(e){Array.from(e).forEach((e=>e.remove()))}function onContentLoaded(){document.querySelectorAll(".collapsible").forEach((e=>addCollapsibleEventListener(e,".hide",".show")))}function addCollapsibleEventListener(e,t,a){e.addEventListener("click",(function(){let e=this.nextElementSibling,d=e.parentElement,n=d.querySelector(t),s=d.querySelector(a);"block"===e.style.display?(e.style.display="none",n.classList.add("hidden"),s.classList.remove("hidden")):(e.style.display="block",n.classList.remove("hidden"),s.classList.add("hidden"))}))}address.events.on("post-enrichment",(function(e){let t=document.querySelector("#enrichment");if(address.geocodes.detailsMap.size>0||e.result.what3words&&e.result.what3words.latitude||address.cvHousehold.detailsMap.size>0){let s,o,r,i,l,c;document.querySelector(".metadata #what3words-key").classList.add("hidden"),document.querySelector(".metadata #what3words-value").classList.add("hidden"),t.classList.remove("hidden"),populateAddressAdditionalInfo(address.cvHousehold.detailsMap,t,address.cvHousehold.title,1),populateAddressAdditionalInfo(address.geocodes.detailsMap,t,address.geocodes.title,2),e.result.what3words&&e.result.what3words.latitude&&(document.querySelector(".metadata #what3words-key").classList.remove("hidden"),document.querySelector(".metadata #what3words-value").classList.remove("hidden"),document.querySelector(".metadata #what3words-value").innerHTML="///"+e.result.what3words.name,s=e.result.what3words.latitude,o=e.result.what3words.longitude,r=[s,o]),e.result.nzl_regional_geocodes?(i=address.geocodes.detailsMap.get("Centroid of Property Latitude"),l=address.geocodes.detailsMap.get("Centroid of Property Longitude")):(i=address.geocodes.detailsMap.get("Latitude"),l=address.geocodes.detailsMap.get("Longitude")),i&&l&&(c=[i,l]);var a=L.icon({iconUrl:"./dist/images/w3w.loc.png",iconSize:[30,37],iconAnchor:[15,36],popupAnchor:[0,-20]});if(r||c){document.querySelector("#map").classList.remove("hidden"),addressValidationMap?(addressValidationW3wMarker&&addressValidationW3wMarker.remove(),addressValidationGeoMarker&&addressValidationGeoMarker.remove()):(addressValidationMap=L.map("map").setView([51.500264,.633506],16),L.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",{attribution:'© OpenStreetMap contributors'}).addTo(addressValidationMap));var d=[];r&&(addressValidationMap.panTo(r,{duration:1}),addressValidationW3wMarker=L.marker(r,{icon:a}).addTo(addressValidationMap),d.push(addressValidationW3wMarker)),c&&(addressValidationMap.panTo(c,{duration:1}),addressValidationGeoMarker=L.marker(c).addTo(addressValidationMap),d.push(addressValidationGeoMarker));var n=L.featureGroup(d);addressValidationMap.fitBounds(n.getBounds().pad(.25))}}address.premiumLocationInsightMap.size>0&&(t.classList.remove("hidden"),populateAddressAdditionalInfo(address.premiumLocationInsightMap,t,"Premium Location Insight",3))})),document.addEventListener("DOMContentLoaded",onContentLoaded); \ No newline at end of file +function populateMetadata(e){null!=e.enrichment&&address.getEnrichmentData(e.enrichment);const t=e.result.confidence;if(t&&(document.querySelector(".metadata #confidence-key").innerText="Verified match"===t?"✔":"❌",document.querySelector(".metadata #confidence-value").innerText=t),e.metadata&&e.metadata.address_classification){const t=e.metadata.address_classification.delivery_type;t&&(document.querySelector(".metadata #delivery-type-key").innerText="residential"===t?"🏡":"🏢",document.querySelector(".metadata #delivery-type-value").innerText=t.substring(0,1).toUpperCase()+t.substring(1))}document.querySelector(".metadata #delivery-address-key").innerHTML=e.result.address?'':"",e.result.address?document.querySelector(".metadata #delivery-address-value").innerHTML=Object.values(e.result.address).filter((e=>""!==e)).join(""):e.result.addresses_formatted[0].address.gas_meters?document.querySelector(".metadata #delivery-address-value").innerHTML=Object.entries(e.result.addresses_formatted[0].address.gas_meters[0]).filter((e=>""!==e[1])).map((e=>e[0]+": "+e[1])).join(""):e.result.addresses_formatted[0].address.electricity_meters?document.querySelector(".metadata #delivery-address-value").innerHTML=Object.entries(e.result.addresses_formatted[0].address.electricity_meters[0]).filter((e=>""!==e[1])).map((e=>e[0]+": "+e[1])).join(""):document.querySelector(".metadata #delivery-address-value").innerHTML="",document.querySelector(".metadata").classList.remove("invisible"),populateAddressAdditionalInfo(address.componentsCollectionMap,document.querySelector("#components-collection")),populateAddressAdditionalInfo(address.metadataCollectionMap,document.querySelector("#metadata-collection"))}function populateAddressAdditionalInfo(e,t,a,d){if(e.size>0){let s=t.getElementsByClassName("content")[0];t.classList.remove("hidden");let n=s;if(a){let e=document.createElement("div");const t=document.createElement("h3");if(t.innerText=a,e.append(t),d){let t=document.createElement("span");t.classList.add("collapsible"),createCollapsibleELement(t,d);let a=document.createElement("div");a.classList.add("content"),a.setAttribute("style","display: none;"),n=a,e.append(t,a)}s.append(e)}populateContent(e,n)}}function createCollapsibleELement(e,t){let a=document.createElement("span");a.innerText="[Hide]",a.classList.add(`hide${t}`),a.classList.add("hidden");let d=document.createElement("span");d.innerText="[Show]",d.classList.add(`show${t}`),e.append(a,d),addCollapsibleEventListener(e,`.hide${t}`,`.show${t}`)}function populateContent(e,t){e.forEach(((e,a)=>{const d=document.createElement("span");let s=document.createElement("br");if("object"==typeof e)d.innerText=`${a}: `,t.append(d,s),addChildElement(Object.entries(e),t,1,!0);else{if(address.tooltipDescriptionMap.has(a)){let t=document.createElement("div");t.classList.add("tooltip"),t.innerText=`${e}`;let s=document.createElement("span");s.classList.add("tooltiptext"),s.innerText=`${address.tooltipDescriptionMap.get(a)}`,t.append(s),d.innerText=`${a}: `,d.append(t)}else d.innerText=`${a}: ${e}`;t.append(d,s)}})),t.append(document.createElement("br"))}function addChildElement(e,t,a,d){for(const[s,n]of e){const e=document.createElement("span");let r=document.createElement("br");if(e.classList.add("tab"),e.setAttribute("style","--spaces: "+2*a+"em;"),"object"==typeof n){let o=a;d&&(e.innerText=`${s}: `,o=a+1,t.append(e,r)),addChildElement(Object.entries(n),t,o,!(Array.isArray(n)&&1===n.length))}else e.innerText=`${s}: ${n}`,t.append(e,r)}}function resetMetadata(){document.querySelector(".metadata #confidence-key").innerText="",document.querySelector(".metadata #confidence-value").innerText="",document.querySelector(".metadata #delivery-type-key").innerText="",document.querySelector(".metadata #delivery-type-value").innerText="",document.querySelector(".metadata #what3words-key").classList.add("hidden"),document.querySelector(".metadata #what3words-value").classList.add("hidden"),document.querySelector(".metadata").classList.add("invisible"),resetMetadataElements(document.getElementById("validated-address-info")),resetMetadataElements(document.getElementById("components-collection"),!0),document.querySelector("#components-collection").classList.add("hidden"),resetMetadataElements(document.getElementById("metadata-collection"),!0),document.querySelector("#metadata-collection").classList.add("hidden"),resetMetadataElements(document.getElementById("enrichment"),!0),document.querySelector("#enrichment").classList.add("hidden"),document.querySelector("#map").classList.add("hidden")}function resetMetadataElements(e,t){t&&(e.querySelector(".hide").classList.add("hidden"),e.querySelector(".show").classList.remove("hidden")),e.querySelectorAll(".content").forEach((e=>{e.style.display=t?"none":"block",t&&(removeElements(e.getElementsByTagName("div")),removeElements(e.getElementsByTagName("span")),removeElements(e.getElementsByTagName("br")),removeElements(e.getElementsByTagName("h3")))}))}function removeElements(e){Array.from(e).forEach((e=>e.remove()))}function onContentLoaded(){document.querySelectorAll(".collapsible").forEach((e=>addCollapsibleEventListener(e,".hide",".show")))}function addCollapsibleEventListener(e,t,a){e.addEventListener("click",(function(){let e=this.nextElementSibling,d=e.parentElement,s=d.querySelector(t),n=d.querySelector(a);"block"===e.style.display?(e.style.display="none",s.classList.add("hidden"),n.classList.remove("hidden")):(e.style.display="block",s.classList.remove("hidden"),n.classList.add("hidden"))}))}address.events.on("post-enrichment",(function(e){let t=document.querySelector("#enrichment");if(address.geocodes.detailsMap.size>0||e.result.what3words&&e.result.what3words.latitude||address.cvHousehold.detailsMap.size>0){let n,r,o,i,l,c;document.querySelector(".metadata #what3words-key").classList.add("hidden"),document.querySelector(".metadata #what3words-value").classList.add("hidden"),t.classList.remove("hidden"),populateAddressAdditionalInfo(address.cvHousehold.detailsMap,t,address.cvHousehold.title,1),populateAddressAdditionalInfo(address.geocodes.detailsMap,t,address.geocodes.title,2),e.result.what3words&&e.result.what3words.latitude&&(document.querySelector(".metadata #what3words-key").classList.remove("hidden"),document.querySelector(".metadata #what3words-value").classList.remove("hidden"),document.querySelector(".metadata #what3words-value").innerHTML="///"+e.result.what3words.name,n=e.result.what3words.latitude,r=e.result.what3words.longitude,o=[n,r]),e.result.nzl_regional_geocodes?(i=address.geocodes.detailsMap.get("Centroid of Property Latitude"),l=address.geocodes.detailsMap.get("Centroid of Property Longitude")):(i=address.geocodes.detailsMap.get("Latitude"),l=address.geocodes.detailsMap.get("Longitude")),i&&l&&(c=[i,l]);var a=L.icon({iconUrl:"./dist/images/w3w.loc.png",iconSize:[30,37],iconAnchor:[15,36],popupAnchor:[0,-20]});if(o||c){document.querySelector("#map").classList.remove("hidden"),addressValidationMap?(addressValidationW3wMarker&&addressValidationW3wMarker.remove(),addressValidationGeoMarker&&addressValidationGeoMarker.remove()):(addressValidationMap=L.map("map").setView([51.500264,.633506],16),L.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",{attribution:'© OpenStreetMap contributors'}).addTo(addressValidationMap));var d=[];o&&(addressValidationMap.panTo(o,{duration:1}),addressValidationW3wMarker=L.marker(o,{icon:a}).addTo(addressValidationMap),d.push(addressValidationW3wMarker)),c&&(addressValidationMap.panTo(c,{duration:1}),addressValidationGeoMarker=L.marker(c).addTo(addressValidationMap),d.push(addressValidationGeoMarker));var s=L.featureGroup(d);addressValidationMap.fitBounds(s.getBounds().pad(.25))}}address.premiumLocationInsightMap.size>0&&(t.classList.remove("hidden"),populateAddressAdditionalInfo(address.premiumLocationInsightMap,t,"Premium Location Insight",3))})),document.addEventListener("DOMContentLoaded",onContentLoaded); \ No newline at end of file diff --git a/dist/js/experian-address-validation.js b/dist/js/experian-address-validation.js index 1221373..7957967 100644 --- a/dist/js/experian-address-validation.js +++ b/dist/js/experian-address-validation.js @@ -1,2 +1,2 @@ -!function(){"use strict";var e,o,t=function(){function e(){this.collection={}}return e.prototype.on=function(e,o){this.collection[e]=this.collection[e]||[],this.collection[e].push(o)},e.prototype.trigger=function(e,o){if(this.collection[e])for(var t=0;t=200&&a.currentRequest.status<400){var o=JSON.parse(a.currentRequest.responseText);t(o)}else a.instance.searchSpinner.hide(),a.instance.events.trigger("request-error",e),a.instance.events.trigger("request-error-".concat(a.currentRequest.status),e)},this.currentRequest.onerror=function(e){a.instance.searchSpinner.hide(),a.instance.events.trigger("request-error",e)},this.currentRequest.ontimeout=function(e){a.instance.searchSpinner.hide(),a.instance.events.trigger("request-timeout",e)},this.currentRequest.send(s)},e}();!function(e){e.AUTOCOMPLETE="autocomplete",e.SINGLELINE="singleline",e.VALIDATE="validate",e.LOOKUPV2="lookupv2"}(e||(e={})),function(e){e[e.SEARCH=1]="SEARCH",e[e.WHAT3WORDS=2]="WHAT3WORDS",e[e.UDPRN=3]="UDPRN",e[e.LOOKUPV2=4]="LOOKUPV2"}(o||(o={}));var a,d={LOCALITY:{key:"locality",display:"Locality"},POSTAL_CODE:{key:"postal_code",display:"Postal code"},UDPRN:{key:"udprn",display:"UDPRN"},WHAT3WORDS:{key:"what3words",display:"what3words"}},r={TRUE:{key:"true",display:"True"},FALSE:{key:"false",display:"False"}};!function(e){e.NO_MATCHES="No matches",e.VERIFIED_MATCH="Verified match",e.INTERACTION_REQUIRED="Interaction required",e.PREMISES_PARTIAL="Premises partial",e.STREET_PARTIAL="Street partial",e.MULTIPLE_MATCHES="Multiple matches"}(a||(a={}));var n={avMode:o.SEARCH,searchType:e.AUTOCOMPLETE,input:{placeholderText:"Start typing an address...",applyFocus:!1},formattedAddressContainer:{showHeading:!1,headingType:"h3",validatedHeadingText:"Validated address",manualHeadingText:"Manual address entered"},searchAgain:{visible:!0,text:"Search again"},useAddressEnteredText:" - Use address entered or try again...",useSpinner:!1,language:"en",addressLineLabels:["address_line_1","address_line_2","address_line_3","locality","region","postal_code","country"]},l=[{country:"Afghanistan",iso3Code:"AFG",iso2Code:"AF",datasetCode:"af-address-ed",searchType:"singleline, validate"},{country:"Afghanistan",iso3Code:"AFG",iso2Code:"AF",datasetCode:"af-address-eh",searchType:"autocomplete, lookupv2"},{country:"Albania",iso3Code:"ALB",iso2Code:"AL",datasetCode:"al-address-ed",searchType:"singleline, validate"},{country:"Albania",iso3Code:"ALB",iso2Code:"AL",datasetCode:"al-address-eh",searchType:"autocomplete, lookupv2"},{country:"Algeria",iso3Code:"DZA",iso2Code:"DZ",datasetCode:"dz-address-ed",searchType:"singleline, validate"},{country:"Algeria",iso3Code:"DZA",iso2Code:"DZ",datasetCode:"dz-address-eh",searchType:"autocomplete, lookupv2"},{country:"American Samoa",iso3Code:"ASM",iso2Code:"AS",datasetCode:"as-address-eh",searchType:"autocomplete, lookupv2"},{country:"Andorra",iso3Code:"AND",iso2Code:"AD",datasetCode:"ad-address-ed",searchType:"singleline, validate"},{country:"Andorra",iso3Code:"AND",iso2Code:"AD",datasetCode:"ad-address-eh",searchType:"autocomplete, lookupv2"},{country:"Angola",iso3Code:"AGO",iso2Code:"AO",datasetCode:"ao-address-ed",searchType:"singleline, validate"},{country:"Angola",iso3Code:"AGO",iso2Code:"AO",datasetCode:"ao-address-eh",searchType:"autocomplete, lookupv2"},{country:"Anguilla",iso3Code:"AIA",iso2Code:"AI",datasetCode:"ai-address-eh",searchType:"autocomplete, lookupv2"},{country:"Antarctica",iso3Code:"ATA",iso2Code:"AQ",datasetCode:"aq-address-ed",searchType:"singleline, validate"},{country:"Antigua and Barbuda",iso3Code:"ATG",iso2Code:"AG",datasetCode:"ag-address-ed",searchType:"singleline, validate"},{country:"Antigua and Barbuda",iso3Code:"ATG",iso2Code:"AG",datasetCode:"ag-address-eh",searchType:"autocomplete, lookupv2"},{country:"Argentina",iso3Code:"ARG",iso2Code:"AR",datasetCode:"ar-address-ed",searchType:"singleline, validate"},{country:"Argentina",iso3Code:"ARG",iso2Code:"AR",datasetCode:"ar-address-eh",searchType:"autocomplete, lookupv2"},{country:"Armenia",iso3Code:"ARM",iso2Code:"AM",datasetCode:"am-address-ed",searchType:"singleline, validate"},{country:"Armenia",iso3Code:"ARM",iso2Code:"AM",datasetCode:"am-address-eh",searchType:"autocomplete, lookupv2"},{country:"Aruba",iso3Code:"ABW",iso2Code:"AW",datasetCode:"aw-address-ed",searchType:"singleline, validate"},{country:"Aruba",iso3Code:"ABW",iso2Code:"AW",datasetCode:"aw-address-eh",searchType:"autocomplete, lookupv2"},{country:"Australia DataFusion",iso3Code:"AUS",iso2Code:"AU",datasetCode:"au-address-datafusion",searchType:"autocomplete, singleline, typedown, lookupv2"},{country:"Australia Geocoded National Address",iso3Code:"AUS",iso2Code:"AU",datasetCode:"au-address-gnaf",searchType:"autocomplete, singleline, typedown, validate, lookupv2"},{country:"Australia Postal Address",iso3Code:"AUS",iso2Code:"AU",datasetCode:"au-address",searchType:"autocomplete, singleline, typedown, validate, lookupv2"},{country:"Austria",iso3Code:"AUT",iso2Code:"AT",datasetCode:"at-address-eh",searchType:"autocomplete, lookupv2"},{country:"Austria",iso3Code:"AUT",iso2Code:"AT",datasetCode:"az-address-ed",searchType:"singleline, validate"},{country:"Azerbaijan",iso3Code:"AZE",iso2Code:"AZ",datasetCode:"az-address-ed",searchType:"singleline, validate"},{country:"Azerbaijan",iso3Code:"AZE",iso2Code:"AZ",datasetCode:"az-address-eh",searchType:"autocomplete, lookupv2"},{country:"Bahamas",iso3Code:"BHS",iso2Code:"BS",datasetCode:"bs-address-ed",searchType:"singleline, validate"},{country:"Bahamas",iso3Code:"BHS",iso2Code:"BS",datasetCode:"bs-address-eh",searchType:"autocomplete, lookupv2"},{country:"Bahrain",iso3Code:"BHR",iso2Code:"BH",datasetCode:"bh-address-ed",searchType:"singleline, validate"},{country:"Bahrain",iso3Code:"BHR",iso2Code:"BH",datasetCode:"bh-address-eh",searchType:"autocomplete, lookupv2"},{country:"Bangladesh",iso3Code:"BGD",iso2Code:"BD",datasetCode:"bd-address-ed",searchType:"singleline, validate"},{country:"Bangladesh",iso3Code:"BGD",iso2Code:"BD",datasetCode:"bd-address-eh",searchType:"autocomplete, lookupv2"},{country:"Barbados",iso3Code:"BRB",iso2Code:"BB",datasetCode:"bb-address-ed",searchType:"singleline, validate"},{country:"Barbados",iso3Code:"BRB",iso2Code:"BB",datasetCode:"bb-address-eh",searchType:"autocomplete, lookupv2"},{country:"Belarus",iso3Code:"BLR",iso2Code:"BY",datasetCode:"by-address-ed",searchType:"singleline, validate"},{country:"Belarus",iso3Code:"BLR",iso2Code:"BY",datasetCode:"by-address-eh",searchType:"autocomplete, lookupv2"},{country:"Belgium",iso3Code:"BEL",iso2Code:"BE",datasetCode:"be-address",searchType:"singleline, typedown"},{country:"Belgium",iso3Code:"BEL",iso2Code:"BE",datasetCode:"be-address-ed",searchType:" validate"},{country:"Belgium",iso3Code:"BEL",iso2Code:"BE",datasetCode:"be-address-eh",searchType:"autocomplete, lookupv2"},{country:"Belize",iso3Code:"BLZ",iso2Code:"BZ",datasetCode:"bz-address-ed",searchType:"singleline, validate"},{country:"Belize",iso3Code:"BLZ",iso2Code:"BZ",datasetCode:"bz-address-eh",searchType:"autocomplete, lookupv2"},{country:"Benin",iso3Code:"BEN",iso2Code:"BJ",datasetCode:"bj-address-ed",searchType:"singleline, validate"},{country:"Benin",iso3Code:"BEN",iso2Code:"BJ",datasetCode:"bj-address-eh",searchType:"autocomplete, lookupv2"},{country:"Bermuda",iso3Code:"BMU",iso2Code:"BM",datasetCode:"bm-address-ed",searchType:"singleline, validate"},{country:"Bermuda",iso3Code:"BMU",iso2Code:"BM",datasetCode:"bm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Bhutan",iso3Code:"BTN",iso2Code:"BT",datasetCode:"bt-address-ed",searchType:"singleline, validate"},{country:"Bhutan",iso3Code:"BTN",iso2Code:"BT",datasetCode:"bt-address-eh",searchType:"autocomplete, lookupv2"},{country:"Bolivia",iso3Code:"BOL",iso2Code:"BO",datasetCode:"bo-address-ed",searchType:"singleline, validate"},{country:"Bolivia",iso3Code:"BOL",iso2Code:"BO",datasetCode:"bo-address-eh",searchType:"autocomplete, lookupv2"},{country:"Bonaire, Sint Eustatius and Saba",iso3Code:"BES",iso2Code:"BQ",datasetCode:"bq-address-ed",searchType:"singleline, validate"},{country:"Bonaire, Sint Eustatius and Saba",iso3Code:"BES",iso2Code:"BQ",datasetCode:"bq-address-eh",searchType:"autocomplete, lookupv2"},{country:"Bosnia and Herzegovina",iso3Code:"BIH",iso2Code:"BA",datasetCode:"ba-address-ed",searchType:"singleline, validate"},{country:"Bosnia and Herzegovina",iso3Code:"BIH",iso2Code:"BA",datasetCode:"ba-address-eh",searchType:"autocomplete, lookupv2"},{country:"Botswana",iso3Code:"BWA",iso2Code:"BW",datasetCode:"bw-address-ed",searchType:"singleline, validate"},{country:"Botswana",iso3Code:"BWA",iso2Code:"BW",datasetCode:"bw-address-eh",searchType:"autocomplete, lookupv2"},{country:"Brazil",iso3Code:"BRA",iso2Code:"BR",datasetCode:"br-address-ed",searchType:"singleline, validate"},{country:"Brazil",iso3Code:"BRA",iso2Code:"BR",datasetCode:"br-address-eh",searchType:"autocomplete, lookupv2"},{country:"Brunei Darussalam",iso3Code:"BRN",iso2Code:"BN",datasetCode:"bn-address-ed",searchType:"singleline, validate"},{country:"Brunei Darussalam",iso3Code:"BRN",iso2Code:"BN",datasetCode:"bn-address-eh",searchType:"autocomplete, lookupv2"},{country:"Bulgaria",iso3Code:"BGR",iso2Code:"BG",datasetCode:"bg-address-ed",searchType:"singleline, validate"},{country:"Bulgaria",iso3Code:"BGR",iso2Code:"BG",datasetCode:"bg-address-eh",searchType:"autocomplete, lookupv2"},{country:"Burkina Faso",iso3Code:"BFA",iso2Code:"BF",datasetCode:"bf-address-ed",searchType:"singleline, validate"},{country:"Burkina Faso",iso3Code:"BFA",iso2Code:"BF",datasetCode:"bf-address-eh",searchType:"autocomplete, lookupv2"},{country:"Burundi",iso3Code:"BDI",iso2Code:"BI",datasetCode:"bi-address-eh",searchType:"autocomplete, lookupv2"},{country:"Cambodia",iso3Code:"KHM",iso2Code:"KH",datasetCode:"kh-address-ed",searchType:"singleline, validate"},{country:"Cambodia",iso3Code:"KHM",iso2Code:"KH",datasetCode:"kh-address-eh",searchType:"autocomplete, lookupv2"},{country:"Cameroon",iso3Code:"CMR",iso2Code:"CM",datasetCode:"cm-address-ed",searchType:"singleline, validate"},{country:"Cameroon",iso3Code:"CMR",iso2Code:"CM",datasetCode:"cm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Canada",iso3Code:"CAN",iso2Code:"CA",datasetCode:"ca-address",searchType:"autocomplete, singleline, typedown, validate, lookupv2"},{country:"Cape Verde",iso3Code:"CPV",iso2Code:"CV",datasetCode:"cv-address-ed",searchType:"singleline, validate"},{country:"Cape Verde",iso3Code:"CPV",iso2Code:"CV",datasetCode:"cv-address-eh",searchType:"autocomplete, lookupv2"},{country:"Cayman Islands",iso3Code:"CYM",iso2Code:"KY",datasetCode:"ky-address-ed",searchType:"singleline, validate"},{country:"Cayman Islands",iso3Code:"CYM",iso2Code:"KY",datasetCode:"ky-address-eh",searchType:"autocomplete, lookupv2"},{country:"Central African Republic",iso3Code:"CAF",iso2Code:"CF",datasetCode:"cf-address-ed",searchType:"singleline, validate"},{country:"Central African Republic",iso3Code:"CAF",iso2Code:"CF",datasetCode:"cf-address-eh",searchType:"autocomplete, lookupv2"},{country:"Chad",iso3Code:"TCD",iso2Code:"TD",datasetCode:"td-address-ed",searchType:"singleline, validate"},{country:"Chad",iso3Code:"TCD",iso2Code:"TD",datasetCode:"td-address-eh",searchType:"autocomplete, lookupv2"},{country:"Chile",iso3Code:"CHL",iso2Code:"CL",datasetCode:"cl-address-ed",searchType:"singleline, validate"},{country:"Chile",iso3Code:"CHL",iso2Code:"CL",datasetCode:"cl-address-eh",searchType:"autocomplete, lookupv2"},{country:"China",iso3Code:"CHN",iso2Code:"CN",datasetCode:"cn-address-ed",searchType:"singleline, validate"},{country:"China",iso3Code:"CHN",iso2Code:"CN",datasetCode:"cn-address-eh",searchType:"autocomplete, lookupv2"},{country:"Christmas Island",iso3Code:"CXR",iso2Code:"CX",datasetCode:"cx-address-eh",searchType:"autocomplete, lookupv2"},{country:"Cocos Island",iso3Code:"CCK",iso2Code:"CC",datasetCode:"cc-address-eh",searchType:"autocomplete, lookupv2"},{country:"Colombia",iso3Code:"COL",iso2Code:"CO",datasetCode:"co-address-ed",searchType:"singleline, validate"},{country:"Colombia",iso3Code:"COL",iso2Code:"CO",datasetCode:"co-address-eh",searchType:"autocomplete, lookupv2"},{country:"Comoros",iso3Code:"COM",iso2Code:"KM",datasetCode:"km-address-ed",searchType:"singleline, validate"},{country:"Comoros",iso3Code:"COM",iso2Code:"KM",datasetCode:"km-address-eh",searchType:"autocomplete, lookupv2"},{country:"Congo",iso3Code:"COG",iso2Code:"CG",datasetCode:"cg-address-ed",searchType:"singleline, validate"},{country:"Congo",iso3Code:"COG",iso2Code:"CG",datasetCode:"cg-address-eh",searchType:"autocomplete, lookupv2"},{country:"Congo, The Democratic Republic of the",iso3Code:"COD",iso2Code:"CD",datasetCode:"cd-address-ed",searchType:"singleline, validate"},{country:"Congo, The Democratic Republic of the",iso3Code:"COD",iso2Code:"CD",datasetCode:"cd-address-eh",searchType:"autocomplete, lookupv2"},{country:"Cook Islands",iso3Code:"COK",iso2Code:"CK",datasetCode:"ck-address-ed",searchType:"singleline, validate"},{country:"Cook Islands",iso3Code:"COK",iso2Code:"CK",datasetCode:"ck-address-eh",searchType:"autocomplete, lookupv2"},{country:"Costa Rica",iso3Code:"CRI",iso2Code:"CR",datasetCode:"cr-address-ed",searchType:"singleline, validate"},{country:"Costa Rica",iso3Code:"CRI",iso2Code:"CR",datasetCode:"cr-address-eh",searchType:"autocomplete, lookupv2"},{country:"Croatia",iso3Code:"HRV",iso2Code:"HR",datasetCode:"hr-address-ed",searchType:"singleline, validate"},{country:"Croatia",iso3Code:"HRV",iso2Code:"HR",datasetCode:"hr-address-eh",searchType:"autocomplete, lookupv2"},{country:"Cuba",iso3Code:"CUB",iso2Code:"CU",datasetCode:"cu-address-ed",searchType:"singleline, validate"},{country:"Cuba",iso3Code:"CUB",iso2Code:"CU",datasetCode:"cu-address-eh",searchType:"autocomplete, lookupv2"},{country:"Curaçao",iso3Code:"CUW",iso2Code:"CW",datasetCode:"cw-address-ed",searchType:"singleline, validate"},{country:"Curaçao",iso3Code:"CUW",iso2Code:"CW",datasetCode:"cw-address-eh",searchType:"autocomplete, lookupv2"},{country:"Cyprus",iso3Code:"CYP",iso2Code:"CY",datasetCode:"cy-address-ed",searchType:"singleline, validate"},{country:"Cyprus",iso3Code:"CYP",iso2Code:"CY",datasetCode:"cy-address-eh",searchType:"autocomplete, lookupv2"},{country:"Czech Republic",iso3Code:"CZE",iso2Code:"CZ",datasetCode:"cz-address-ed",searchType:"singleline, validate"},{country:"Czech Republic",iso3Code:"CZE",iso2Code:"CZ",datasetCode:"cz-address-eh",searchType:"autocomplete, lookupv2"},{country:"Côte d'Ivoire",iso3Code:"CIV",iso2Code:"CI",datasetCode:"ci-address-ed",searchType:"singleline, validate"},{country:"Côte d'Ivoire",iso3Code:"CIV",iso2Code:"CI",datasetCode:"ci-address-eh",searchType:"autocomplete, lookupv2"},{country:"Denmark",iso3Code:"DNK",iso2Code:"DK",datasetCode:"dk-address",searchType:"singleline, typedown, validate"},{country:"Denmark",iso3Code:"DNK",iso2Code:"DK",datasetCode:"dk-address-eh",searchType:"autocomplete, lookupv2"},{country:"Djibouti",iso3Code:"DJI",iso2Code:"DJ",datasetCode:"dj-address-ed",searchType:"singleline, validate"},{country:"Djibouti",iso3Code:"DJI",iso2Code:"DJ",datasetCode:"dj-address-eh",searchType:"autocomplete, lookupv2"},{country:"Dominica",iso3Code:"DMA",iso2Code:"DM",datasetCode:"dm-address-ed",searchType:"singleline, validate"},{country:"Dominica",iso3Code:"DMA",iso2Code:"DM",datasetCode:"dm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Dominican Republic",iso3Code:"DOM",iso2Code:"DO",datasetCode:"do-address-ed",searchType:"singleline, validate"},{country:"Dominican Republic",iso3Code:"DOM",iso2Code:"DO",datasetCode:"do-address-eh",searchType:"autocomplete, lookupv2"},{country:"Ecuador",iso3Code:"ECU",iso2Code:"EC",datasetCode:"ec-address-ed",searchType:"singleline, validate"},{country:"Ecuador",iso3Code:"ECU",iso2Code:"EC",datasetCode:"ec-address-eh",searchType:"autocomplete, lookupv2"},{country:"Egypt",iso3Code:"EGY",iso2Code:"EG",datasetCode:"eg-address-ed",searchType:"singleline, validate"},{country:"Egypt",iso3Code:"EGY",iso2Code:"EG",datasetCode:"eg-address-eh",searchType:"autocomplete, lookupv2"},{country:"El Salvador",iso3Code:"SLV",iso2Code:"SV",datasetCode:"sv-address-ed",searchType:"singleline, validate"},{country:"El Salvador",iso3Code:"SLV",iso2Code:"SV",datasetCode:"sv-address-eh",searchType:"autocomplete, lookupv2"},{country:"Equatorial Guinea",iso3Code:"GNQ",iso2Code:"GQ",datasetCode:"gq-address-ed",searchType:"singleline, validate"},{country:"Equatorial Guinea",iso3Code:"GNQ",iso2Code:"GQ",datasetCode:"gq-address-eh",searchType:"autocomplete, lookupv2"},{country:"Eritrea",iso3Code:"ERI",iso2Code:"ER",datasetCode:"er-address-ed",searchType:"singleline, validate"},{country:"Eritrea",iso3Code:"ERI",iso2Code:"ER",datasetCode:"er-address-eh",searchType:"autocomplete, lookupv2"},{country:"Estonia",iso3Code:"EST",iso2Code:"EE",datasetCode:"ee-address-ed",searchType:"singleline, validate"},{country:"Estonia",iso3Code:"EST",iso2Code:"EE",datasetCode:"ee-address-eh",searchType:"autocomplete, lookupv2"},{country:"Ethiopia",iso3Code:"ETH",iso2Code:"ET",datasetCode:"et-address-ed",searchType:"singleline, validate"},{country:"Ethiopia",iso3Code:"ETH",iso2Code:"ET",datasetCode:"et-address-eh",searchType:"autocomplete, lookupv2"},{country:"Falkland Islands (Malvinas)",iso3Code:"FLK",iso2Code:"FK",datasetCode:"fk-address-eh",searchType:"autocomplete, lookupv2"},{country:"Faroe Islands",iso3Code:"FRO",iso2Code:"FO",datasetCode:"fo-address-ed",searchType:"singleline, validate"},{country:"Faroe Islands",iso3Code:"FRO",iso2Code:"FO",datasetCode:"fo-address-eh",searchType:"autocomplete, lookupv2"},{country:"Fiji",iso3Code:"FJI",iso2Code:"FJ",datasetCode:"fj-address-ed",searchType:"singleline, validate"},{country:"Fiji",iso3Code:"FJI",iso2Code:"FJ",datasetCode:"fj-address-eh",searchType:"autocomplete, lookupv2"},{country:"Finland",iso3Code:"FIN",iso2Code:"FI",datasetCode:"fi-address",searchType:"singleline, typedown"},{country:"Finland",iso3Code:"FIN",iso2Code:"FI",datasetCode:"fi-address-ed",searchType:"validate"},{country:"Finland",iso3Code:"FIN",iso2Code:"FI",datasetCode:"fi-address-eh",searchType:"autocomplete, lookupv2"},{country:"France Street Level",iso3Code:"FRA",iso2Code:"FR",datasetCode:"fr-address-streetlevel",searchType:"singleline, typedown, validate"},{country:"France Sub-Premises Level",iso3Code:"FRA",iso2Code:"FR",datasetCode:"fr-additional-hexaline3",searchType:"autocomplete, singleline, typedown"},{country:"France Premises Level",iso3Code:"FRA",iso2Code:"FR",datasetCode:"fr-address",searchType:"singleline, typedown, validate"},{country:"French Guiana",iso3Code:"GUF",iso2Code:"GF",datasetCode:"gf-address-eh",searchType:"autocomplete, lookupv2"},{country:"French Polynesia",iso3Code:"PYF",iso2Code:"PF",datasetCode:"pf-address-eh",searchType:"autocomplete, lookupv2"},{country:"Gabon",iso3Code:"GAB",iso2Code:"GA",datasetCode:"ga-address-ed",searchType:"singleline, validate"},{country:"Gabon",iso3Code:"GAB",iso2Code:"GA",datasetCode:"ga-address-eh",searchType:"autocomplete, lookupv2"},{country:"Gambia",iso3Code:"GMB",iso2Code:"GM",datasetCode:"gm-address-ed",searchType:"singleline, validate"},{country:"Gambia",iso3Code:"GMB",iso2Code:"GM",datasetCode:"gm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Georgia",iso3Code:"GEO",iso2Code:"GE",datasetCode:"ge-address-ed",searchType:"singleline, validate"},{country:"Georgia",iso3Code:"GEO",iso2Code:"GE",datasetCode:"ge-address-eh",searchType:"autocomplete, lookupv2"},{country:"Germany",iso3Code:"DEU",iso2Code:"DE",datasetCode:"de-address",searchType:"singleline, typedown, validate"},{country:"Germany",iso3Code:"DEU",iso2Code:"DE",datasetCode:"de-address-ed",searchType:"validate"},{country:"Germany",iso3Code:"DEU",iso2Code:"DE",datasetCode:"de-address-eh",searchType:"autocomplete, lookupv2"},{country:"Ghana",iso3Code:"GHA",iso2Code:"GH",datasetCode:"gh-address-ed",searchType:"singleline, validate"},{country:"Ghana",iso3Code:"GHA",iso2Code:"GH",datasetCode:"gh-address-eh",searchType:"autocomplete, lookupv2"},{country:"Gibraltar",iso3Code:"GIB",iso2Code:"GI",datasetCode:"gi-address-eh",searchType:"autocomplete, lookupv2"},{country:"Greece",iso3Code:"GRC",iso2Code:"GR",datasetCode:"gr-address-ed",searchType:"singleline, validate"},{country:"Greece",iso3Code:"GRC",iso2Code:"GR",datasetCode:"gr-address-eh",searchType:"autocomplete, lookupv2"},{country:"Greenland",iso3Code:"GRL",iso2Code:"GL",datasetCode:"gl-address-ed",searchType:"singleline, validate"},{country:"Greenland",iso3Code:"GRL",iso2Code:"GL",datasetCode:"gl-address-eh",searchType:"autocomplete, lookupv2"},{country:"Grenada",iso3Code:"GRD",iso2Code:"GD",datasetCode:"gd-address-ed",searchType:"singleline, validate"},{country:"Grenada",iso3Code:"GRD",iso2Code:"GD",datasetCode:"gd-address-eh",searchType:"autocomplete, lookupv2"},{country:"Guadeloupe",iso3Code:"GLP",iso2Code:"GP",datasetCode:"gp-address-eh",searchType:"autocomplete, lookupv2"},{country:"Guam",iso3Code:"GUM",iso2Code:"GU",datasetCode:"gu-address-eh",searchType:"autocomplete, lookupv2"},{country:"Guatemala",iso3Code:"GTM",iso2Code:"GT",datasetCode:"gt-address-ed",searchType:"singleline, validate"},{country:"Guatemala",iso3Code:"GTM",iso2Code:"GT",datasetCode:"gt-address-eh",searchType:"autocomplete, lookupv2"},{country:"Guinea",iso3Code:"GIN",iso2Code:"GN",datasetCode:"gn-address-ed",searchType:"singleline, validate"},{country:"Guinea",iso3Code:"GIN",iso2Code:"GN",datasetCode:"gn-address-eh",searchType:"autocomplete, lookupv2"},{country:"Guinea-Bissau",iso3Code:"GNB",iso2Code:"GW",datasetCode:"gw-address-ed",searchType:"singleline, validate"},{country:"Guinea-Bissau",iso3Code:"GNB",iso2Code:"GW",datasetCode:"gw-address-eh",searchType:"autocomplete, lookupv2"},{country:"Guyana",iso3Code:"GUY",iso2Code:"GY",datasetCode:"gy-address-ed",searchType:"singleline, validate"},{country:"Guyana",iso3Code:"GUY",iso2Code:"GY",datasetCode:"gy-address-eh",searchType:"autocomplete, lookupv2"},{country:"Haiti",iso3Code:"HTI",iso2Code:"HT",datasetCode:"ht-address-ed",searchType:"singleline, validate"},{country:"Haiti",iso3Code:"HTI",iso2Code:"HT",datasetCode:"ht-address-eh",searchType:"autocomplete, lookupv2"},{country:"Honduras",iso3Code:"HND",iso2Code:"HN",datasetCode:"hn-address-ed",searchType:"singleline, validate"},{country:"Honduras",iso3Code:"HND",iso2Code:"HN",datasetCode:"hn-address-eh",searchType:"autocomplete, lookupv2"},{country:"Hong Kong",iso3Code:"HKG",iso2Code:"HK",datasetCode:"hk-address-ed",searchType:"singleline, validate"},{country:"Hong Kong",iso3Code:"HKG",iso2Code:"HK",datasetCode:"hk-address-eh",searchType:"autocomplete, lookupv2"},{country:"Hungary",iso3Code:"HUN",iso2Code:"HU",datasetCode:"hu-address-ed",searchType:"singleline, validate"},{country:"Hungary",iso3Code:"HUN",iso2Code:"HU",datasetCode:"hu-address-eh",searchType:"autocomplete, lookupv2"},{country:"Iceland",iso3Code:"ISL",iso2Code:"IS",datasetCode:"is-address-ed",searchType:"singleline, validate"},{country:"Iceland",iso3Code:"ISL",iso2Code:"IS",datasetCode:"is-address-eh",searchType:"autocomplete, lookupv2"},{country:"India",iso3Code:"IND",iso2Code:"IN",datasetCode:"in-address-ed",searchType:"singleline, validate"},{country:"India",iso3Code:"IND",iso2Code:"IN",datasetCode:"in-address-eh",searchType:"autocomplete, lookupv2"},{country:"Indonesia",iso3Code:"IDN",iso2Code:"ID",datasetCode:"id-address-ed",searchType:"singleline, validate"},{country:"Indonesia",iso3Code:"IDN",iso2Code:"ID",datasetCode:"id-address-eh",searchType:"autocomplete, lookupv2"},{country:"Iran, Islamic Republic of",iso3Code:"IRN",iso2Code:"IR",datasetCode:"ir-address-ed",searchType:"singleline, validate"},{country:"Iran, Islamic Republic of",iso3Code:"IRN",iso2Code:"IR",datasetCode:"ir-address-eh",searchType:"autocomplete, lookupv2"},{country:"Iraq",iso3Code:"IRQ",iso2Code:"IQ",datasetCode:"iq-address-ed",searchType:"singleline, validate"},{country:"Iraq",iso3Code:"IRQ",iso2Code:"IQ",datasetCode:"iq-address-eh",searchType:"autocomplete, lookupv2"},{country:"Ireland",iso3Code:"IRL",iso2Code:"IE",datasetCode:"ie-address",searchType:"singleline, typedown"},{country:"Ireland",iso3Code:"IRL",iso2Code:"IE",datasetCode:"ie-address-eh",searchType:"autocomplete, lookupv2"},{country:"Ireland Eircode",iso3Code:"IRL",iso2Code:"IE",datasetCode:"ie-additional-eircode",searchType:"autocomplete, lookupv2"},{country:"Ireland ECAD",iso3Code:"IRL",iso2Code:"IE",datasetCode:"ie-address-ecad",searchType:"autocomplete, lookupv2, singleline, typedown"},{country:"Israel",iso3Code:"ISR",iso2Code:"IL",datasetCode:"il-address-ed",searchType:"singleline, validate"},{country:"Israel",iso3Code:"ISR",iso2Code:"IL",datasetCode:"il-address-eh",searchType:"autocomplete, lookupv2"},{country:"Italy",iso3Code:"ITA",iso2Code:"IT",datasetCode:"it-address-ed",searchType:"singleline, validate"},{country:"Italy",iso3Code:"ITA",iso2Code:"IT",datasetCode:"it-address-eh",searchType:"autocomplete, lookupv2"},{country:"Jamaica",iso3Code:"JAM",iso2Code:"JM",datasetCode:"jm-address-ed",searchType:"singleline, validate"},{country:"Jamaica",iso3Code:"JAM",iso2Code:"JM",datasetCode:"jm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Japan",iso3Code:"JPN",iso2Code:"JP",datasetCode:"jp-address-ed",searchType:"singleline, validate"},{country:"Japan",iso3Code:"JPN",iso2Code:"JP",datasetCode:"jp-address-eh",searchType:"autocomplete, lookupv2"},{country:"Jordan",iso3Code:"JOR",iso2Code:"JO",datasetCode:"jo-address-ed",searchType:"singleline, validate"},{country:"Jordan",iso3Code:"JOR",iso2Code:"JO",datasetCode:"jo-address-eh",searchType:"autocomplete, lookupv2"},{country:"Kazakhstan",iso3Code:"KAZ",iso2Code:"KZ",datasetCode:"kz-address-ed",searchType:"singleline, validate"},{country:"Kazakhstan",iso3Code:"KAZ",iso2Code:"KZ",datasetCode:"kz-address-eh",searchType:"autocomplete, lookupv2"},{country:"Kenya",iso3Code:"KEN",iso2Code:"KE",datasetCode:"ke-address-ed",searchType:"singleline, validate"},{country:"Kenya",iso3Code:"KEN",iso2Code:"KE",datasetCode:"ke-address-eh",searchType:"autocomplete, lookupv2"},{country:"Kiribati",iso3Code:"KIR",iso2Code:"KI",datasetCode:"ki-address-ed",searchType:"singleline, validate"},{country:"Kiribati",iso3Code:"KIR",iso2Code:"KI",datasetCode:"ki-address-eh",searchType:"autocomplete, lookupv2"},{country:"Korea, Democratic People's Republic of",iso3Code:"PRK",iso2Code:"KP",datasetCode:"kp-address-ed",searchType:"singleline, validate"},{country:"Korea, Democratic People's Republic of",iso3Code:"PRK",iso2Code:"KP",datasetCode:"kp-address-eh",searchType:"autocomplete, lookupv2"},{country:"Korea, Republic of",iso3Code:"KOR",iso2Code:"KR",datasetCode:"kr-address-ed",searchType:"singleline, validate"},{country:"Korea, Republic of",iso3Code:"KOR",iso2Code:"KR",datasetCode:"kr-address-eh",searchType:"autocomplete, lookupv2"},{country:"Kosovo",iso3Code:"KOS",iso2Code:"XK",datasetCode:"kv-address-eh",searchType:"autocomplete, lookupv2"},{country:"Kuwait",iso3Code:"KWT",iso2Code:"KW",datasetCode:"kw-address-ed",searchType:"singleline, validate"},{country:"Kuwait",iso3Code:"KWT",iso2Code:"KW",datasetCode:"kw-address-eh",searchType:"autocomplete, lookupv2"},{country:"Kyrgyzstan",iso3Code:"KGZ",iso2Code:"KG",datasetCode:"kg-address-ed",searchType:"singleline, validate"},{country:"Kyrgyzstan",iso3Code:"KGZ",iso2Code:"KG",datasetCode:"kg-address-eh",searchType:"autocomplete, lookupv2"},{country:"Laos",iso3Code:"LAO",iso2Code:"LA",datasetCode:"la-address-ed",searchType:"singleline, validate"},{country:"Laos",iso3Code:"LAO",iso2Code:"LA",datasetCode:"la-address-eh",searchType:"autocomplete, lookupv2"},{country:"Latvia",iso3Code:"LVA",iso2Code:"LV",datasetCode:"lv-address-ed",searchType:"singleline, validate"},{country:"Latvia",iso3Code:"LVA",iso2Code:"LV",datasetCode:"lv-address-eh",searchType:"autocomplete, lookupv2"},{country:"Lebanon",iso3Code:"LBN",iso2Code:"LB",datasetCode:"lb-address-ed",searchType:"singleline, validate"},{country:"Lebanon",iso3Code:"LBN",iso2Code:"LB",datasetCode:"lb-address-eh",searchType:"autocomplete, lookupv2"},{country:"Lesotho",iso3Code:"LSO",iso2Code:"LS",datasetCode:"ls-address-ed",searchType:"singleline, validate"},{country:"Lesotho",iso3Code:"LSO",iso2Code:"LS",datasetCode:"ls-address-eh",searchType:"autocomplete, lookupv2"},{country:"Liberia",iso3Code:"LBR",iso2Code:"LR",datasetCode:"lr-address-ed",searchType:"singleline, validate"},{country:"Liberia",iso3Code:"LBR",iso2Code:"LR",datasetCode:"lr-address-eh",searchType:"autocomplete, lookupv2"},{country:"Libya",iso3Code:"LBY",iso2Code:"LY",datasetCode:"ly-address-ed",searchType:"singleline, validate"},{country:"Libya",iso3Code:"LBY",iso2Code:"LY",datasetCode:"ly-address-eh",searchType:"autocomplete, lookupv2"},{country:"Liechtenstein",iso3Code:"LIE",iso2Code:"LI",datasetCode:"li-address-ed",searchType:"singleline, validate"},{country:"Liechtenstein",iso3Code:"LIE",iso2Code:"LI",datasetCode:"li-address-eh",searchType:"autocomplete, lookupv2"},{country:"Lithuania",iso3Code:"LTU",iso2Code:"LT",datasetCode:"lt-address-ed",searchType:"singleline, validate"},{country:"Lithuania",iso3Code:"LTU",iso2Code:"LT",datasetCode:"lt-address-eh",searchType:"autocomplete, lookupv2"},{country:"Luxembourg",iso3Code:"LUX",iso2Code:"LU",datasetCode:"lu-address",searchType:"singleline, typedown, validate"},{country:"Luxembourg",iso3Code:"LUX",iso2Code:"LU",datasetCode:"lu-address-eh",searchType:"autocomplete, lookupv2"},{country:"Macau",iso3Code:"MAC",iso2Code:"MO",datasetCode:"lv-address-ed",searchType:"singleline, validate"},{country:"Macau",iso3Code:"MAC",iso2Code:"MO",datasetCode:"lv-address-eh",searchType:"autocomplete, lookupv2"},{country:"Madagascar",iso3Code:"MDG",iso2Code:"MG",datasetCode:"mo-address-ed",searchType:"singleline, validate"},{country:"Madagascar",iso3Code:"MDG",iso2Code:"MG",datasetCode:"mo-address-eh",searchType:"autocomplete, lookupv2"},{country:"Malawi",iso3Code:"MWI",iso2Code:"MW",datasetCode:"mw-address-ed",searchType:"singleline, validate"},{country:"Malawi",iso3Code:"MWI",iso2Code:"MW",datasetCode:"mw-address-eh",searchType:"autocomplete, lookupv2"},{country:"Malaysia",iso3Code:"MYS",iso2Code:"MY",datasetCode:"my-address-ed",searchType:"singleline, validate"},{country:"Malaysia",iso3Code:"MYS",iso2Code:"MY",datasetCode:"my-address-eh",searchType:"autocomplete, lookupv2"},{country:"Maldives",iso3Code:"MDV",iso2Code:"MV",datasetCode:"mv-address-ed",searchType:"singleline, validate"},{country:"Maldives",iso3Code:"MDV",iso2Code:"MV",datasetCode:"mv-address-eh",searchType:"autocomplete, lookupv2"},{country:"Mali",iso3Code:"MLI",iso2Code:"ML",datasetCode:"ml-address-ed",searchType:"singleline, validate"},{country:"Mali",iso3Code:"MLI",iso2Code:"ML",datasetCode:"ml-address-eh",searchType:"autocomplete, lookupv2"},{country:"Malta",iso3Code:"MLT",iso2Code:"MT",datasetCode:"mt-address-ed",searchType:"singleline, validate"},{country:"Malta",iso3Code:"MLT",iso2Code:"MT",datasetCode:"mt-address-eh",searchType:"autocomplete, lookupv2"},{country:"Marshall Islands",iso3Code:"MHL",iso2Code:"MH",datasetCode:"mh-address-eh",searchType:"autocomplete, lookupv2"},{country:"Martinique",iso3Code:"MTQ",iso2Code:"MQ",datasetCode:"mq-address-eh",searchType:"autocomplete, lookupv2"},{country:"Mauritania",iso3Code:"MRT",iso2Code:"MR",datasetCode:"mr-address-ed",searchType:"singleline, validate"},{country:"Mauritania",iso3Code:"MRT",iso2Code:"MR",datasetCode:"mr-address-eh",searchType:"autocomplete, lookupv2"},{country:"Mauritius",iso3Code:"MUS",iso2Code:"MU",datasetCode:"mu-address-ed",searchType:"singleline, validate"},{country:"Mauritius",iso3Code:"MUS",iso2Code:"MU",datasetCode:"mu-address-eh",searchType:"autocomplete, lookupv2"},{country:"Mayotte",iso3Code:"MYT",iso2Code:"YT",datasetCode:"yt-address-eh",searchType:"autocomplete, lookupv2"},{country:"Mexico",iso3Code:"MEX",iso2Code:"MX",datasetCode:"mx-address-ed",searchType:"singleline, validate"},{country:"Mexico",iso3Code:"MEX",iso2Code:"MX",datasetCode:"mx-address-eh",searchType:"autocomplete, lookupv2"},{country:"Micronesia, Federated States of",iso3Code:"FSM",iso2Code:"FM",datasetCode:"fm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Moldova",iso3Code:"MDA",iso2Code:"MD",datasetCode:"md-address-ed",searchType:"singleline, validate"},{country:"Moldova",iso3Code:"MDA",iso2Code:"MD",datasetCode:"md-address-eh",searchType:"autocomplete, lookupv2"},{country:"Monaco",iso3Code:"MCO",iso2Code:"MC",datasetCode:"mc-address-ed",searchType:"singleline, validate"},{country:"Monaco",iso3Code:"MCO",iso2Code:"MC",datasetCode:"mc-address-eh",searchType:"autocomplete, lookupv2"},{country:"Mongolia",iso3Code:"MNG",iso2Code:"MN",datasetCode:"mn-address-ed",searchType:"singleline, validate"},{country:"Mongolia",iso3Code:"MNG",iso2Code:"MN",datasetCode:"mn-address-eh",searchType:"autocomplete, lookupv2"},{country:"Montenegro",iso3Code:"MNE",iso2Code:"ME",datasetCode:"me-address-ed",searchType:"singleline, validate"},{country:"Montenegro",iso3Code:"MNE",iso2Code:"ME",datasetCode:"me-address-eh",searchType:"autocomplete, lookupv2"},{country:"Montserrat",iso3Code:"MSR",iso2Code:"MS",datasetCode:"ms-address-eh",searchType:"autocomplete, lookupv2"},{country:"Morocco",iso3Code:"MAR",iso2Code:"MA",datasetCode:"ma-address-ed",searchType:"singleline, validate"},{country:"Morocco",iso3Code:"MAR",iso2Code:"MA",datasetCode:"ma-address-eh",searchType:"autocomplete, lookupv2"},{country:"Mozambique",iso3Code:"MOZ",iso2Code:"MZ",datasetCode:"mz-address-ed",searchType:"singleline, validate"},{country:"Mozambique",iso3Code:"MOZ",iso2Code:"MZ",datasetCode:"mz-address-eh",searchType:"autocomplete, lookupv2"},{country:"Myanmar",iso3Code:"MMR",iso2Code:"MM",datasetCode:"mm-address-ed",searchType:"singleline, validate"},{country:"Myanmar",iso3Code:"MMR",iso2Code:"MM",datasetCode:"mm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Namibia",iso3Code:"NAM",iso2Code:"NA",datasetCode:"na-address-ed",searchType:"singleline, validate"},{country:"Namibia",iso3Code:"NAM",iso2Code:"NA",datasetCode:"na-address-eh",searchType:"autocomplete, lookupv2"},{country:"Nauru",iso3Code:"NRU",iso2Code:"NR",datasetCode:"nr-address-ed",searchType:"singleline, validate"},{country:"Nauru",iso3Code:"NRU",iso2Code:"NR",datasetCode:"nr-address-eh",searchType:"autocomplete, lookupv2"},{country:"Nepal",iso3Code:"NPL",iso2Code:"NP",datasetCode:"np-address-ed",searchType:"singleline, validate"},{country:"Nepal",iso3Code:"NPL",iso2Code:"NP",datasetCode:"np-address-eh",searchType:"autocomplete, lookupv2"},{country:"Netherlands",iso3Code:"NLD",iso2Code:"NL",datasetCode:"nl-address",searchType:"singleline, typedown, validate"},{country:"Netherlands",iso3Code:"NLD",iso2Code:"NL",datasetCode:"nl-address-eh",searchType:"autocomplete, lookupv2"},{country:"New Caledonia",iso3Code:"NCL",iso2Code:"NC",datasetCode:"nc-address-eh",searchType:"autocomplete, lookupv2"},{country:"New Zealand DataFusion",iso3Code:"NZL",iso2Code:"NZ",datasetCode:"nz-additional-datafusion",searchType:"autocomplete, singleline, typedown, validate, lookupv2"},{country:"New Zealand Postal Address",iso3Code:"NZL",iso2Code:"NZ",datasetCode:"nz-address",searchType:"autocomplete, singleline, typedown, validate, lookupv2"},{country:"Nicaragua",iso3Code:"NIC",iso2Code:"NI",datasetCode:"ni-address-ed",searchType:"singleline, validate"},{country:"Nicaragua",iso3Code:"NIC",iso2Code:"NI",datasetCode:"ni-address-eh",searchType:"autocomplete, lookupv2"},{country:"Niger",iso3Code:"NER",iso2Code:"NE",datasetCode:"ne-address-ed",searchType:"singleline, validate"},{country:"Niger",iso3Code:"NER",iso2Code:"NE",datasetCode:"ne-address-eh",searchType:"autocomplete, lookupv2"},{country:"Nigeria",iso3Code:"NGA",iso2Code:"NG",datasetCode:"ng-address-ed",searchType:"singleline, validate"},{country:"Nigeria",iso3Code:"NGA",iso2Code:"NG",datasetCode:"ng-address-eh",searchType:"autocomplete, lookupv2"},{country:"Niue",iso3Code:"NIU",iso2Code:"NU",datasetCode:"nu-address-ed",searchType:"singleline, validate"},{country:"Niue",iso3Code:"NIU",iso2Code:"NU",datasetCode:"nu-address-eh",searchType:"autocomplete, lookupv2"},{country:"Norfolk Island",iso3Code:"NFK",iso2Code:"NF",datasetCode:"nf-address-ed",searchType:"singleline, validate"},{country:"Norfolk Island",iso3Code:"NFK",iso2Code:"NF",datasetCode:"nf-address-eh",searchType:"autocomplete, lookupv2"},{country:"North Macedonia",iso3Code:"MKD",iso2Code:"MK",datasetCode:"mk-address-ed",searchType:"singleline, validate"},{country:"North Macedonia",iso3Code:"MKD",iso2Code:"MK",datasetCode:"mk-address-eh",searchType:"autocomplete, lookupv2"},{country:"Northern Mariana Islands",iso3Code:"MNP",iso2Code:"MP",datasetCode:"mp-address-eh",searchType:"autocomplete, lookupv2"},{country:"Norway",iso3Code:"NOR",iso2Code:"NO",datasetCode:"no-address",searchType:"singleline, typedown"},{country:"Norway",iso3Code:"NOR",iso2Code:"NO",datasetCode:"no-address-ed",searchType:"validate"},{country:"Norway",iso3Code:"NOR",iso2Code:"NO",datasetCode:"no-address-eh",searchType:"autocomplete, lookupv2"},{country:"Oman",iso3Code:"OMN",iso2Code:"OM",datasetCode:"om-address-ed",searchType:"singleline, validate"},{country:"Oman",iso3Code:"OMN",iso2Code:"OM",datasetCode:"om-address-eh",searchType:"autocomplete, lookupv2"},{country:"Pakistan",iso3Code:"PAK",iso2Code:"PK",datasetCode:"pk-address-ed",searchType:"singleline, validate"},{country:"Pakistan",iso3Code:"PAK",iso2Code:"PK",datasetCode:"pk-address-eh",searchType:"autocomplete, lookupv2"},{country:"Palau",iso3Code:"PLW",iso2Code:"PW",datasetCode:"pw-address-eh",searchType:"autocomplete, lookupv2"},{country:"Palestine",iso3Code:"PSE",iso2Code:"PS",datasetCode:"ps-address-eh",searchType:"autocomplete, lookupv2"},{country:"Panama",iso3Code:"PAN",iso2Code:"PA",datasetCode:"pa-address-ed",searchType:"singleline, validate"},{country:"Panama",iso3Code:"PAN",iso2Code:"PA",datasetCode:"pa-address-eh",searchType:"autocomplete, lookupv2"},{country:"Papua New Guinea",iso3Code:"PNG",iso2Code:"PG",datasetCode:"pg-address-ed",searchType:"singleline, validate"},{country:"Papua New Guinea",iso3Code:"PNG",iso2Code:"PG",datasetCode:"pg-address-eh",searchType:"autocomplete, lookupv2"},{country:"Paraguay",iso3Code:"PRY",iso2Code:"PY",datasetCode:"py-address-ed",searchType:"singleline, validate"},{country:"Paraguay",iso3Code:"PRY",iso2Code:"PY",datasetCode:"py-address-eh",searchType:"autocomplete, lookupv2"},{country:"Peru",iso3Code:"PER",iso2Code:"PE",datasetCode:"pe-address-ed",searchType:"singleline, validate"},{country:"Peru",iso3Code:"PER",iso2Code:"PE",datasetCode:"pe-address-eh",searchType:"autocomplete, lookupv2"},{country:"Philippines",iso3Code:"PHL",iso2Code:"PH",datasetCode:"ph-address-ed",searchType:"singleline, validate"},{country:"Philippines",iso3Code:"PHL",iso2Code:"PH",datasetCode:"ph-address-eh",searchType:"autocomplete, lookupv2"},{country:"Pitcairn Islands",iso3Code:"PCN",iso2Code:"PN",datasetCode:"pn-address-eh",searchType:"autocomplete, lookupv2"},{country:"Poland",iso3Code:"POL",iso2Code:"PL",datasetCode:"pl-address-ed",searchType:"singleline, validate"},{country:"Poland",iso3Code:"POL",iso2Code:"PL",datasetCode:"pl-address-eh",searchType:"autocomplete, lookupv2"},{country:"Portugal",iso3Code:"PRT",iso2Code:"PT",datasetCode:"pt-address-ed",searchType:"singleline, validate"},{country:"Portugal",iso3Code:"PRT",iso2Code:"PT",datasetCode:"pt-address-eh",searchType:"autocomplete, lookupv2"},{country:"Qatar",iso3Code:"QAT",iso2Code:"QA",datasetCode:"qa-address-ed",searchType:"singleline, validate"},{country:"Qatar",iso3Code:"QAT",iso2Code:"QA",datasetCode:"qa-address-eh",searchType:"autocomplete, lookupv2"},{country:"Romania",iso3Code:"ROU",iso2Code:"RO",datasetCode:"ro-address-ed",searchType:"singleline, validate"},{country:"Romania",iso3Code:"ROU",iso2Code:"RO",datasetCode:"ro-address-eh",searchType:"autocomplete, lookupv2"},{country:"Russian Federation",iso3Code:"RUS",iso2Code:"RU",datasetCode:"ru-address-ed",searchType:"singleline, validate"},{country:"Russian Federation",iso3Code:"RUS",iso2Code:"RU",datasetCode:"ru-address-eh",searchType:"autocomplete, lookupv2"},{country:"Rwanda",iso3Code:"RWA",iso2Code:"RW",datasetCode:"rw-address-ed",searchType:"singleline, validate"},{country:"Rwanda",iso3Code:"RWA",iso2Code:"RW",datasetCode:"rw-address-eh",searchType:"autocomplete, lookupv2"},{country:"Réunion",iso3Code:"REU",iso2Code:"RE",datasetCode:"re-address-eh",searchType:"autocomplete, lookupv2"},{country:"Saint Barthélemy",iso3Code:"BLM",iso2Code:"BL",datasetCode:"bl-address-eh",searchType:"autocomplete, lookupv2"},{country:"Saint Helena",iso3Code:"SHN",iso2Code:"SH",datasetCode:"sh-address-eh",searchType:"autocomplete, lookupv2"},{country:"Saint Kitts and Nevis",iso3Code:"KNA",iso2Code:"KN",datasetCode:"kn-address-ed",searchType:"singleline, validate"},{country:"Saint Kitts and Nevis",iso3Code:"KNA",iso2Code:"KN",datasetCode:"kn-address-eh",searchType:"autocomplete, lookupv2"},{country:"Saint Lucia",iso3Code:"LCA",iso2Code:"LC",datasetCode:"lc-address-eh",searchType:"autocomplete, lookupv2"},{country:"Saint Martin",iso3Code:"MAF",iso2Code:"MF",datasetCode:"mf-address-eh",searchType:"autocomplete, lookupv2"},{country:"Saint Pierre and Miquelon",iso3Code:"SPM",iso2Code:"PM",datasetCode:"pm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Saint Vincent and the Grenadines",iso3Code:"VCT",iso2Code:"VC",datasetCode:"vc-address-ed",searchType:"singleline, validate"},{country:"Saint Vincent and the Grenadines",iso3Code:"VCT",iso2Code:"VC",datasetCode:"vc-address-eh",searchType:"autocomplete, lookupv2"},{country:"Samoa",iso3Code:"WSM",iso2Code:"WS",datasetCode:"ws-address-ed",searchType:"singleline, validate"},{country:"Samoa",iso3Code:"WSM",iso2Code:"WS",datasetCode:"ws-address-eh",searchType:"autocomplete, lookupv2"},{country:"San Marino",iso3Code:"SMR",iso2Code:"SM",datasetCode:"sm-address-ed",searchType:"singleline, validate"},{country:"San Marino",iso3Code:"SMR",iso2Code:"SM",datasetCode:"sm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Sao Tome and Principe",iso3Code:"STP",iso2Code:"ST",datasetCode:"st-address-ed",searchType:"singleline, validate"},{country:"Sao Tome and Principe",iso3Code:"STP",iso2Code:"ST",datasetCode:"st-address-eh",searchType:"autocomplete, lookupv2"},{country:"Saudi Arabia",iso3Code:"SAU",iso2Code:"SA",datasetCode:"sa-address-ed",searchType:"singleline, validate"},{country:"Saudi Arabia",iso3Code:"SAU",iso2Code:"SA",datasetCode:"sa-address-eh",searchType:"autocomplete, lookupv2"},{country:"Senegal",iso3Code:"SEN",iso2Code:"SN",datasetCode:"sn-address-ed",searchType:"singleline, validate"},{country:"Senegal",iso3Code:"SEN",iso2Code:"SN",datasetCode:"sn-address-eh",searchType:"autocomplete, lookupv2"},{country:"Serbia",iso3Code:"SRB",iso2Code:"RS",datasetCode:"rs-address-ed",searchType:"singleline, validate"},{country:"Serbia",iso3Code:"SRB",iso2Code:"RS",datasetCode:"rs-address-eh",searchType:"autocomplete, lookupv2"},{country:"Seychelles",iso3Code:"SYC",iso2Code:"SC",datasetCode:"sc-address-ed",searchType:"singleline, validate"},{country:"Seychelles",iso3Code:"SYC",iso2Code:"SC",datasetCode:"sc-address-eh",searchType:"autocomplete, lookupv2"},{country:"Sierra Leone",iso3Code:"SLE",iso2Code:"SL",datasetCode:"sl-address-ed",searchType:"singleline, validate"},{country:"Sierra Leone",iso3Code:"SLE",iso2Code:"SL",datasetCode:"sl-address-eh",searchType:"autocomplete, lookupv2"},{country:"Singapore",iso3Code:"SGP",iso2Code:"SG",datasetCode:"sg-address",searchType:"autocomplete, singleline, typedown, validate, lookupv2"},{country:"Sint Maarten",iso3Code:"SXM",iso2Code:"SX",datasetCode:"sx-address-ed",searchType:"singleline, validate"},{country:"Sint Maarten",iso3Code:"SXM",iso2Code:"SX",datasetCode:"sx-address-eh",searchType:"autocomplete, lookupv2"},{country:"Slovakia",iso3Code:"SVK",iso2Code:"SK",datasetCode:"sk-address-ed",searchType:"singleline, validate"},{country:"Slovakia",iso3Code:"SVK",iso2Code:"SK",datasetCode:"sk-address-eh",searchType:"autocomplete, lookupv2"},{country:"Slovenia",iso3Code:"SVN",iso2Code:"SI",datasetCode:"si-address-ed",searchType:"singleline, validate"},{country:"Slovenia",iso3Code:"SVN",iso2Code:"SI",datasetCode:"si-address-eh",searchType:"autocomplete, lookupv2"},{country:"Solomon Islands",iso3Code:"SLB",iso2Code:"SB",datasetCode:"sb-address-ed",searchType:"singleline, validate"},{country:"Solomon Islands",iso3Code:"SLB",iso2Code:"SB",datasetCode:"sb-address-eh",searchType:"autocomplete, lookupv2"},{country:"Somalia",iso3Code:"SOM",iso2Code:"SO",datasetCode:"so-address-ed",searchType:"singleline, validate"},{country:"Somalia",iso3Code:"SOM",iso2Code:"SO",datasetCode:"so-address-eh",searchType:"autocomplete, lookupv2"},{country:"South Africa",iso3Code:"ZAF",iso2Code:"ZA",datasetCode:"za-address-ed",searchType:"singleline, validate"},{country:"South Africa",iso3Code:"ZAF",iso2Code:"ZA",datasetCode:"za-address-eh",searchType:"autocomplete, lookupv2"},{country:"South Georgia and the South Sandwich Islands",iso3Code:"SGS",iso2Code:"GS",datasetCode:"gs-address-eh",searchType:"autocomplete, lookupv2"},{country:"South Sudan",iso3Code:"SSD",iso2Code:"SS",datasetCode:"ss-address-ed",searchType:"singleline, validate"},{country:"South Sudan",iso3Code:"SSD",iso2Code:"SS",datasetCode:"ss-address-eh",searchType:"autocomplete, lookupv2"},{country:"Spain",iso3Code:"ESP",iso2Code:"ES",datasetCode:"es-address",searchType:"singleline, typedown"},{country:"Spain",iso3Code:"ESP",iso2Code:"ES",datasetCode:"es-address-ed",searchType:"validate"},{country:"Spain",iso3Code:"ESP",iso2Code:"ES",datasetCode:"es-address-eh",searchType:"autocomplete, lookupv2"},{country:"Sri Lanka",iso3Code:"LKA",iso2Code:"LK",datasetCode:"lk-address-ed",searchType:"singleline, validate"},{country:"Sudan",iso3Code:"SDN",iso2Code:"SD",datasetCode:"sd-address-ed",searchType:"singleline, validate"},{country:"Sudan",iso3Code:"SDN",iso2Code:"SD",datasetCode:"sd-address-eh",searchType:"autocomplete, lookupv2"},{country:"Suriname",iso3Code:"SUR",iso2Code:"SR",datasetCode:"sr-address-ed",searchType:"singleline, validate"},{country:"Suriname",iso3Code:"SUR",iso2Code:"SR",datasetCode:"sr-address-eh",searchType:"autocomplete, lookupv2"},{country:"Svalbard and Jan Mayen Islands",iso3Code:"SJM",iso2Code:"SJ",datasetCode:"sj-address-eh",searchType:"autocomplete, lookupv2"},{country:"Swaziland (Eswatini)",iso3Code:"SWZ",iso2Code:"SZ",datasetCode:"sz-address-ed",searchType:"singleline, validate"},{country:"Swaziland (Eswatini)",iso3Code:"SWZ",iso2Code:"SZ",datasetCode:"sz-address-eh",searchType:"autocomplete, lookupv2"},{country:"Sweden",iso3Code:"SWE",iso2Code:"SE",datasetCode:"se-address",searchType:"singleline, typedown"},{country:"Sweden",iso3Code:"SWE",iso2Code:"SE",datasetCode:"se-address-ed",searchType:"validate"},{country:"Sweden",iso3Code:"SWE",iso2Code:"SE",datasetCode:"se-address-eh",searchType:"autocomplete, lookupv2"},{country:"Switzerland",iso3Code:"CHE",iso2Code:"CH",datasetCode:"ch-address",searchType:"singleline, typedown"},{country:"Switzerland",iso3Code:"CHE",iso2Code:"CH",datasetCode:"ch-address-ed",searchType:"validate"},{country:"Switzerland",iso3Code:"CHE",iso2Code:"CH",datasetCode:"ch-address-eh",searchType:"autocomplete, lookupv2"},{country:"Syria",iso3Code:"SYR",iso2Code:"SY",datasetCode:"sy-address-ed",searchType:"singleline, validate"},{country:"Syria",iso3Code:"SYR",iso2Code:"SY",datasetCode:"sy-address-eh",searchType:"autocomplete, lookupv2"},{country:"Taiwan",iso3Code:"TWN",iso2Code:"TW",datasetCode:"tw-address-ed",searchType:"singleline, validate"},{country:"Taiwan",iso3Code:"TWN",iso2Code:"TW",datasetCode:"tw-address-eh",searchType:"autocomplete, lookupv2"},{country:"Tajikistan",iso3Code:"TJK",iso2Code:"TJ",datasetCode:"tj-address-ed",searchType:"singleline, validate"},{country:"Tajikistan",iso3Code:"TJK",iso2Code:"TJ",datasetCode:"tj-address-eh",searchType:"autocomplete, lookupv2"},{country:"Tanzania",iso3Code:"TZA",iso2Code:"TZ",datasetCode:"tz-address-ed",searchType:"singleline, validate"},{country:"Tanzania",iso3Code:"TZA",iso2Code:"TZ",datasetCode:"tz-address-eh",searchType:"autocomplete, lookupv2"},{country:"Thailand",iso3Code:"THA",iso2Code:"TH",datasetCode:"th-address-ed",searchType:"singleline, validate"},{country:"Thailand",iso3Code:"THA",iso2Code:"TH",datasetCode:"th-address-eh",searchType:"autocomplete, lookupv2"},{country:"Timor-Leste",iso3Code:"TLS",iso2Code:"TL",datasetCode:"tl-address-ed",searchType:"singleline, validate"},{country:"Timor-Leste",iso3Code:"TLS",iso2Code:"TL",datasetCode:"tl-address-eh",searchType:"autocomplete, lookupv2"},{country:"Togo",iso3Code:"TGO",iso2Code:"TG",datasetCode:"tg-address-ed",searchType:"singleline, validate"},{country:"Togo",iso3Code:"TGO",iso2Code:"TG",datasetCode:"tg-address-eh",searchType:"autocomplete, lookupv2"},{country:"Tokelau",iso3Code:"TKL",iso2Code:"TK",datasetCode:"tk-address-ed",searchType:"singleline, validate"},{country:"Tokelau",iso3Code:"TKL",iso2Code:"TK",datasetCode:"tk-address-eh",searchType:"autocomplete, lookupv2"},{country:"Tonga",iso3Code:"TON",iso2Code:"TO",datasetCode:"to-address-ed",searchType:"singleline, validate"},{country:"Tonga",iso3Code:"TON",iso2Code:"TO",datasetCode:"to-address-eh",searchType:"autocomplete, lookupv2"},{country:"Trinidad and Tobago",iso3Code:"TTO",iso2Code:"TT",datasetCode:"tt-address-ed",searchType:"singleline, validate"},{country:"Trinidad and Tobago",iso3Code:"TTO",iso2Code:"TT",datasetCode:"tt-address-eh",searchType:"autocomplete, lookupv2"},{country:"Tunisia",iso3Code:"TUN",iso2Code:"TN",datasetCode:"tn-address-ed",searchType:"singleline, validate"},{country:"Tunisia",iso3Code:"TUN",iso2Code:"TN",datasetCode:"tn-address-eh",searchType:"autocomplete, lookupv2"},{country:"Turkey",iso3Code:"TUR",iso2Code:"TR",datasetCode:"tr-address-ed",searchType:"singleline, validate"},{country:"Turkey",iso3Code:"TUR",iso2Code:"TR",datasetCode:"tr-address-eh",searchType:"autocomplete, lookupv2"},{country:"Turkish Republic of Northern Cyprus",iso3Code:"NCY",iso2Code:"CY",datasetCode:"ny-address-eh",searchType:"autocomplete, lookupv2"},{country:"Turkmenistan",iso3Code:"TKM",iso2Code:"TM",datasetCode:"tm-address-ed",searchType:"singleline, validate"},{country:"Turkmenistan",iso3Code:"TKM",iso2Code:"TM",datasetCode:"tm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Turks and Caicos Islands",iso3Code:"TCA",iso2Code:"TC",datasetCode:"tc-address-eh",searchType:"autocomplete, lookupv2"},{country:"Tuvalu",iso3Code:"TUV",iso2Code:"TV",datasetCode:"tv-address-ed",searchType:"singleline, validate"},{country:"Tuvalu",iso3Code:"TUV",iso2Code:"TV",datasetCode:"tv-address-eh",searchType:"autocomplete, lookupv2"},{country:"Uganda",iso3Code:"UGA",iso2Code:"UG",datasetCode:"ug-address-ed",searchType:"singleline, validate"},{country:"Uganda",iso3Code:"UGA",iso2Code:"UG",datasetCode:"ug-address-eh",searchType:"autocomplete, lookupv2"},{country:"Ukraine",iso3Code:"UKR",iso2Code:"UA",datasetCode:"ua-address-ed",searchType:"singleline, validate"},{country:"Ukraine",iso3Code:"UKR",iso2Code:"UA",datasetCode:"ua-address-eh",searchType:"autocomplete, lookupv2"},{country:"United Arab Emirates",iso3Code:"ARE",iso2Code:"AE",datasetCode:"ae-address-ed",searchType:"singleline, validate"},{country:"United Arab Emirates",iso3Code:"ARE",iso2Code:"AE",datasetCode:"ae-address-eh",searchType:"autocomplete, lookupv2"},{country:"United Kingdom",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-address",searchType:"autocomplete, singleline, typedown, validate, lookupv2"},{country:"United Kingdom",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-additional-multipleresidence",searchType:"autocomplete, singleline, typedown, validate, lookupv2"},{country:"United Kingdom",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-additional-notyetbuilt",searchType:"autocomplete, singleline, typedown, validate, lookupv2"},{country:"United Kingdom AddressBase Premium",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-address-addressbase",searchType:"singleline, typedown, validate, lookup"},{country:"United Kingdom AddressBase Premium with Islands",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-additional-addressbaseislands",searchType:"singleline, typedown, validate, lookup"},{country:"United Kingdom Business Names",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-additional-business",searchType:"singleline, typedown"},{country:"United Kingdom Electricity",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-additional-electricity",searchType:"autocomplete, singleline, typedown, lookupv2"},{country:"United Kingdom Gas",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-additional-gas",searchType:"autocomplete, singleline, typedown, lookupv2"},{country:"United Kingdom Street Level",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-address-streetlevel",searchType:"singleline, typedown"},{country:"United Kingdom Extended Business",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-additional-businessextended",searchType:"singleline, typedown, validate, lookup"},{country:"United Kingdom Cymraeg (Welsh Language) Postal Address",iso3Code:"GBR",iso2Code:"GB",datasetCode:"gb-address-wales",searchType:"singleline, typedown, validate"},{country:"United States of America",iso3Code:"USA",iso2Code:"US",datasetCode:"us-address",searchType:"autocomplete, singleline, typedown, validate, lookupv2"},{country:"Uruguay",iso3Code:"URY",iso2Code:"UY",datasetCode:"uy-address-ed",searchType:"singleline, validate"},{country:"Uruguay",iso3Code:"URY",iso2Code:"UY",datasetCode:"uy-address-eh",searchType:"autocomplete, lookupv2"},{country:"Uzbekistan",iso3Code:"UZB",iso2Code:"UZ",datasetCode:"uz-address-ed",searchType:"singleline, validate"},{country:"Uzbekistan",iso3Code:"UZB",iso2Code:"UZ",datasetCode:"uz-address-eh",searchType:"autocomplete, lookupv2"},{country:"Vanuatu",iso3Code:"VUT",iso2Code:"VU",datasetCode:"vu-address-ed",searchType:"singleline, validate"},{country:"Vanuatu",iso3Code:"VUT",iso2Code:"VU",datasetCode:"vu-address-eh",searchType:"autocomplete, lookupv2"},{country:"Vatican City (Holy See)",iso3Code:"VAT",iso2Code:"VA",datasetCode:"va-address-ed",searchType:"singleline, validate"},{country:"Vatican City (Holy See)",iso3Code:"VAT",iso2Code:"VA",datasetCode:"va-address-eh",searchType:"autocomplete, lookupv2"},{country:"Venezuela",iso3Code:"VEN",iso2Code:"VE",datasetCode:"ve-address-ed",searchType:"singleline, validate"},{country:"Venezuela",iso3Code:"VEN",iso2Code:"VE",datasetCode:"ve-address-eh",searchType:"autocomplete, lookupv2"},{country:"Viet Nam",iso3Code:"VNM",iso2Code:"VN",datasetCode:"vn-address-ed",searchType:"singleline, validate"},{country:"Viet Nam",iso3Code:"VNM",iso2Code:"VN",datasetCode:"vn-address-eh",searchType:"autocomplete, lookupv2"},{country:"Virgin Islands, British",iso3Code:"VGB",iso2Code:"VG",datasetCode:"vg-address-eh",searchType:"autocomplete, lookupv2"},{country:"Virgin Islands, U.S.",iso3Code:"VIR",iso2Code:"VI",datasetCode:"vi-address-eh",searchType:"autocomplete, lookupv2"},{country:"Wallis and Futuna Islands",iso3Code:"WLF",iso2Code:"WF",datasetCode:"wf-address-eh",searchType:"autocomplete, lookupv2"},{country:"Western Sahara",iso3Code:"ESH",iso2Code:"EH",datasetCode:"eh-address-ed",searchType:"singleline, validate"},{country:"Western Sahara",iso3Code:"ESH",iso2Code:"EH",datasetCode:"eh-address-eh",searchType:"autocomplete, lookupv2"},{country:"Yemen",iso3Code:"YEM",iso2Code:"YE",datasetCode:"ye-address-ed",searchType:"singleline, validate"},{country:"Yemen",iso3Code:"YEM",iso2Code:"YE",datasetCode:"ye-address-eh",searchType:"autocomplete, lookupv2"},{country:"Zambia",iso3Code:"ZMB",iso2Code:"ZM",datasetCode:"zm-address-ed",searchType:"singleline, validate"},{country:"Zambia",iso3Code:"ZMB",iso2Code:"ZM",datasetCode:"zm-address-eh",searchType:"autocomplete, lookupv2"},{country:"Zimbabwe",iso3Code:"ZWE",iso2Code:"ZW",datasetCode:"zw-address-ed",searchType:"singleline, validate"},{country:"Zimbabwe",iso3Code:"ZWE",iso2Code:"ZW",datasetCode:"zw-address-eh",searchType:"autocomplete, lookupv2"}],c={en:{gbr:{locality:"Locality",region:"Region",postal_code:"Postal code"},usa:{locality:"Locality",region:"Region",postal_code:"Postal code"}}},u=function(){this.size=0,this.maxSuggestions=25},p=function(){this.detailsMap=new Map},h="AUS Geocodes",C={latitude:"Latitude",longitude:"Longitude",match_level:"Match Level",sa1:"Sa1",meshblock:"Meshblock",lga_code:"Lga Code",lga_name:"Lga Name",street_pid:"Street Pid",locality_pid:"Locality Pid",geocode_level_code:"Geocode Level Code",geocode_level_description:"Geocode Level Description",geocode_type_code:"Geocode Type Code",geocode_type_description:"Geocode Type Description",highest_level_longitude:"Highest Level Longitude",highest_level_latitude:"Highest Level Latitude",highest_level_geocode_reliability_code:"Highest Level Geocode Reliability Code",highest_level_geocode_reliability_description:"Highest Level Geocode Reliability Description",confidence_level_code:"Confidence Level Code",confidence_level_description:"Confidence Level Description","2016_meshblock_id":"2016 Meshblock Id","2016_meshblock_code":"2016 Meshblock Code","2016_meshblock_match_code":"2016 Meshblock Match Code","2016_meshblock_match_description":"2016 Meshblock Match Description",collector_district_id:"Collector District Id",collector_district_code:"Collector District Code",commonwealth_electoral_boundary_id:"Commonwealth Electoral Boundary Id",commonwealth_electoral_boundary_name:"Commonwealth Electoral Boundary Name",statistical_local_area_id:"Statistical Local Area Id",statistical_local_area_code:"Statistical Local Area Code",statistical_local_area_name:"Statistical Local Area Name",state_electoral_boundary_id:"State Electoral Boundary Id",state_electoral_boundary_name:"State Electoral Boundary Name",state_electoral_effective_start:"State Electoral Effective Start",state_electoral_effective_end:"State Electoral Effective End",state_electoral_new_pid:"State Electoral New Pid",state_electoral_new_name:"State Electoral New Name",state_electoral_new_effective_start:"State Electoral New Effective Start",address_level_longitude:"Address Level Longitude",address_level_latitude:"Address Level Latitude",address_level_geocode_reliability_code:"Address Level Geocode Reliability Code",address_level_geocode_reliability_description:"Address Level Geocode Reliability Description",street_level_longitude:"Street Level Longitude",street_level_latitude:"Street Level Latitude",street_level_boundary_extent:"Street Level Boundary Extent",street_level_geocode_reliability_code:"Street Level Geocode Reliability Code",street_level_geocode_reliability_description:"Street Level Geocode Reliability Description",locality_level_longitude:"Locality Level Longitude",locality_level_latitude:"Locality Level Latitude",locality_level_geocode_reliability_code:"Locality Level Geocode Reliability Code",locality_level_geocode_reliability_description:"Locality Level Geocode Reliability Description",gnaf_legal_parcel_identifier:"Gnaf Legal Parcel Identifier",locality_class_code:"Locality Class Code"},y="AUS Consumer View Household",m={address:"Address",adults_at_address_code:"Adults At Address Code",adults_at_address_description:"Adults At Address Description",affluence_code:"Affluence Code",affluence_description:"Affluence Description",channel_preference:"Channel Preference",channel_preference_description:"Channel Preference Description",children_at_address_code_0_10_years:"Children At Address Code 0 10 Years",children_at_address_code_11_18_years:"Children At Address Code 11 18 Years",children_at_address_description_0_10_years:"Children At Address Description 0 10 Years",children_at_address_description_11_18_years:"Children At Address Description 11 18 Years",credit_demand_code:"Credit Demand Code",credit_demand_description:"Credit Demand Description",gnaf_latitude:"Gnaf Latitude",gnaf_longitude:"Gnaf Longitude",gnaf_pid:"Gnaf Pid",head_of_household_age_code:"Head Of Household Age Code",head_of_household_age_description:"Head Of Household Age Description",hin:"Hin",household_composition_code:"Household Composition Code",household_composition_description:"Household Composition Description",household_income_code:"Household Income Code",household_income_description:"Household Income Description",length_of_residence_code:"Length Of Residence Code",length_of_residence_description:"Length Of Residence Description",lifestage_code:"Lifestage Code",lifestage_description:"Lifestage Description",local_government_area_code:"Local Government Area Code",local_government_area_name:"Local Government Area Name",meshblock:"Meshblock",mosaic_group:"Mosaic Group",mosaic_type:"Mosaic Type",postcode:"Postcode",residential_flag:"Residential Flag",risk_insight_code:"Risk Insight Code",risk_insight_description:"Risk Insight Description",sa1:"Sa1",state:"State",suburb:"Suburb"},g="NZL Geocodes",v={front_of_property_nztm_x_coordinate:"Front of Property NZTM X Coordinate",front_of_property_nztm_y_coordinate:"Front of Property NZTM Y Coordinate",centroid_of_property_nztm_x_coordinate:"Centroid of Property NZTM X Coordinate",centroid_of_property_nztm_y_coordinate:"Centroid of Property NZTM Y Coordinate",front_of_property_latitude:"Front of Property Latitude",front_of_property_longitude:"Front of Property Longitude",centroid_of_property_latitude:"Centroid of Property Latitude",centroid_of_property_longitude:"Centroid of Property Longitude",linz_parcel_id:"Linz Parcel Id",property_purpose_type:"Property Purpose Type",addressable:"Addressable",mesh_block_code:"Mesh Block Code",territorial_authority_code:"Territorial Authority Code",territorial_authority_name:"Territorial Authority Name",regional_council_code:"Regional Council Code",regional_council_name:"Regional Council Name",general_electorate_code:"General Electorate Code",general_electorate_name:"General Electorate Name",maori_electorate_code:"Maori Electorate Code",maori_electorate_name:"Maori Electorate Name",match_level:"Match Level"},T="NZL Consumer View Household",f={adults_at_address:"Adults At Address",children_at_address:"Children At Address",head_of_household_age:"Head Of Household Age",head_of_household_lifestage:"Head Of Household Lifestage",household_composition:"Household Composition",mosaic_group:"Mosaic Group",mosaic_segment:"Mosaic Segment",mosaic_type_group:"Mosaic Type Group"},k="USA Geocodes",b={latitude:"Latitude",longitude:"Longitude",match_level:"Match Level",census_tract:"Census Tract",census_block:"Census Block",core_based_statistical_area:"Core Based Statistical Area",congressional_district_code:"Congressional District Code",county_code:"Country Code"},w="GBR Location Essential",_={latitude:"Latitude",longitude:"Longitude",match_level:"Match Level",udprn:"UDPRN",uprn:"UPRN",x_coordinate:"X Coordinate",y_coordinate:"Y Coordinate"},A={latitude:"Latitude",longitude:"Longitude",name:"Name",description:"Description"},S="Global Geocodes",M={latitude:"Latitude",longitude:"Longitude",match_level:"Match Level"},L={mosaic_group:[{id:"A",title:"First Class Life",description:"Wealthiest group in Australia, typically older middle-aged families with significant assets and income"},{id:"B",title:"Comfortable Foundations",description:"Gen X families with school-aged children, working in white-collar professions and living in suburban areas"},{id:"C",title:"Striving for Status",description:"Young, successful, career-driven professionals living in central city areas with high income and no children"},{id:"D",title:"Secure Tranquillity",description:"Affluent retirees living in higher valued properties in desirable areas"},{id:"E",title:"Family Fringes",description:"Middle-aged traditional families living on large outer-suburban plots, with comfortable incomes and long commutes"},{id:"F",title:"Establishing Roots",description:"Millennial first home buyers, living 10km+ from the city centre with above average income"},{id:"G",title:"Growing Independence",description:"Educated millennials at the start of their careers, renting apartments close to city centres"},{id:"H",title:"Middle Blue-collars",description:"Younger blue-collar workers renting far from city centres, with below average income"},{id:"I",title:"Traditional Pursuits",description:"Average income traditional families & single parents with school-aged children living in outer suburban and regional locations"},{id:"J",title:"True Grit",description:"Blue-collar households in gainful employment, residing in locations across outer suburban, regional and mining towns"},{id:"K",title:"Mature Freedom",description:"Gen X couples without children, renting apartments and terraces in high growth suburbs"},{id:"L",title:"Hardship & Perseverance",description:"Unemployed and blue-collar workers living in units and flats on low incomes"},{id:"M",title:"Graceful Ageing",description:"Older retirees with below average income, living in owned properties or retirement villages"},{id:"N",title:"Rural Commitment",description:"Rural people working in agriculture, living on large plots of land far from main roads and main towns"}],mosaic_type:[{id:"A01",title:"Top of the Ladder",description:"Wealthiest families, married couples often with adult children, owning very expensive properties in exclusive inner-urban areas"},{id:"A02",title:"Luxury Living",description:"Baby boomer families, often with adult children, owning expensive properties in inner-urban & coastal areas"},{id:"A03",title:"Central Prosperity",description:"Middle-older aged empty nester couples renting very expensive properties in inner-urban areas, with high income"},{id:"A04",title:"Suburban Esteem",description:"Traditional baby boomer couples with adult children, owning expensive properties in inner-urban & suburban areas of Sydney & Melbourne"},{id:"B05",title:"Successful Spending",description:"Young, married couples with children and high income, living in outer-suburban/metro-fringe areas"},{id:"B06",title:"Careers & Kids",description:"Gen X families with children, living in expensive properties in suburban areas, with high income"},{id:"B07",title:"Fruitful Families",description:"Gen X families with many children, living in metro-fringe areas, with high income"},{id:"C08",title:"Rooftops & Careers",description:"Well-educated, high-powered business people with very high income and no children, living in expensive properties in central Sydney"},{id:"C09",title:"Elite Alternatives",description:"Well-educated professionals, living in trendy inner-urban areas, with high income"},{id:"C10",title:"Power Couples",description:"Young diverse couples, well-educated, transient, city centre renters with high income and no children"},{id:"D11",title:"Scenic Connection",description:"Older couples in semi-retirement, living in suburban areas and nearby towns for many years, with high income"},{id:"D12",title:"Journeyed Equity",description:"Elderly couples from multicultural backgrounds living in expensive properties in suburban areas of Sydney & Melbourne"},{id:"D13",title:"Coastal Comfort",description:"Retired, traditional couples living in coastal and scenic areas, with average pensionable income levels"},{id:"E14",title:"Spacious Traditions",description:"Middle-aged, traditional families with older children, owning large and expensive properties in outer-suburban areas with high income"},{id:"E15",title:"Opulent Designs",description:"Middle-aged families owning huge houses in outer-suburban areas, with high income"},{id:"E16",title:"Hardware & Acreage",description:"Working in trades, middle-aged families owning acreages of land with large properties just outside the metro fringe"},{id:"F17",title:"Determined Suburbans",description:"Professional couples and singles with high income, owning their first home in high growth inner suburbs"},{id:"F18",title:"Developing Domestics",description:"Young first-home-owner families with very young children, recently moved into new housing estates, with above average income"},{id:"F19",title:"Striving Scholars",description:"Young, highly educated singles and couples, with above average income, living in high growth suburbs"},{id:"G20",title:"Youthful Ambition",description:"Young singles and couples, some students, with no children, renting flats in inner-urban areas, with average income"},{id:"G21",title:"Emerging Metros",description:"Young, well-educated and culturally diverse, renting flats in suburban areas of Sydney, with above average income and no children"},{id:"G22",title:"Spirit Questers",description:"Millennial singles renting in coastal tourist areas, with below average income"},{id:"G23",title:"Global Studies",description:"Young student renters near university campuses, culturally diverse with very low or no income but high spend"},{id:"H24",title:"Backyards & Mates",description:"Millennial blue-collar couples and singles, living in outer-suburban areas and surrounding towns with average income"},{id:"H25",title:"Prams & Trades",description:"Younger blue-collar families with many children, living in new outer-suburban housing estates, with low to average income"},{id:"H26",title:"Earnest Internationals",description:"Younger, diverse blue-collar commuters renting apartments in Sydney outer-suburban areas, with low income"},{id:"H27",title:"Township Solos",description:"Younger blue-collar singles in regional towns, with low income but have financial stability"},{id:"I28",title:"Schools & Bills",description:"Millennial families with young children, sometimes single parents, commuting from outer-suburban areas with average incomes"},{id:"I29",title:"Middle of the Road",description:"Older traditional families with older children, commuting from the metro-fringe with average to high incomes"},{id:"I30",title:"Regional Essentials",description:"Couples and single parents with children living in regional areas with low to average incomes"},{id:"J31",title:"Minerals & Airports",description:"Mixture of singles and couples in mining towns, sometimes with children, earning high incomes"},{id:"J32",title:"Selfless & Hardworking",description:"Blue-collar families from multicultural backgrounds, living in outer-suburban areas, with average to high income"},{id:"J33",title:"Life in the Slow Lane",description:"Middle-aged, blue-collar couples living in outer-suburban/metro-fringe areas, with average income"},{id:"J34",title:"Country Town Courage",description:"Low education, monocultural, manual workers with low income, living in low value properties in rural towns"},{id:"K35",title:"Mature Modernites",description:"Middle-aged couples without children, renting in inner suburban apartments and terraces"},{id:"K36",title:"New-found Freedom",description:"Middle-aged, empty nester couples living in outer-suburban/metro-fringe areas, with above average income"},{id:"K37",title:"Realistic Horizons",description:"Gen X couples and sharers living in outer-suburban and regional areas, with low income and small properties"},{id:"L38",title:"Reset Regionals",description:"Blue-collar families, often single parents, living in rural towns with low income and dependent children"},{id:"L39",title:"New-found Life",description:"Multicultural families, sometimes single parents, living in outer-suburban areas with low income"},{id:"L40",title:"Satellite Battlers",description:"Low income singles in regional towns, sometimes living in social housing"},{id:"L41",title:"Downtown Blues",description:"Older single and diverse, city centre renters with very low income, often living in social housing"},{id:"L42",title:"Township Assistance",description:"Younger families, often single parents, with low incomes in regional towns, often living in social housing"},{id:"M43",title:"Blue-collar Retirees",description:"Multicultural older couples living in outer-suburban areas for a long time, with low income but high property value"},{id:"M44",title:"Staying Put",description:"Older, retired couples, sometimes with adult children or carers, who are long term resident in outer-suburban areas"},{id:"M45",title:"Lonesome Elders",description:"Older singles, living in outer-suburban areas and satellite towns, with below average income"},{id:"M46",title:"Retirement Village",description:"Elderly, traditional couples and singles living in retirement villages in cities and regional towns"},{id:"M47",title:"Rural Retirement",description:"Elderly couples, sometimes with adult children or carers, who are long term residents in rural towns, with low pension income"},{id:"N48",title:"Farming Reliance",description:"Rural farmers and farm owners with below average income, living 10-40km away from the nearest town"},{id:"N49",title:"Outback Comfort",description:"Very rural farmers and farm owners with below average income, living 40km+ from the nearest town"},{id:"N50",title:"Soil & Toil",description:"Single farm workers in very small rural towns. with low income and low value properties"},{id:"N51",title:"Rustic Isolation",description:"Low education, traditional, singles in far inland remote towns, with low income and low value properties"}]},E={adults_at_address:[{id:"1",title:"One adult",description:"The residential property is likely to contain one adult over the age of 18 years residing within the dwelling"},{id:"2",title:"Two adults",description:"The residential property is likely to contain two adults over the age of 18 years residing within the dwelling"},{id:"3",title:"Three adults",description:"The residential property is likely to contain three adults over the age of 18 years residing within the dwelling"},{id:"4",title:"Four adults",description:"The residential property is likely to contain four adults over the age of 18 years residing within the dwelling"},{id:"5",title:"Five adults",description:"The residential property is likely to contain five adults over the age of 18 years residing within the dwelling"},{id:"6",title:"Six adults",description:"The residential property is likely to contain six adults over the age of 18 years residing within the dwelling"},{id:"7",title:"Seven adults",description:"The residential property is likely to contain seven adults over the age of 18 years residing within the dwelling"},{id:"8",title:"Eight adults",description:"The residential property is likely to contain eight adults over the age of 18 years residing within the dwelling"}],children_at_address:[{id:"1",title:"Extremely low likelihood",description:"Extremely low likelihood of the presence of children in the household"},{id:"2",title:"Very low likelihood",description:"Very low likelihood of the presence of children in the household"},{id:"3",title:"Low likelihood",description:"Low likelihood of the presence of children in the household"},{id:"4",title:"Below average likelihood",description:"Below average likelihood of the presence of children in the household"},{id:"5",title:"Average likelihood",description:"Average likelihood of the presence of children in the household"},{id:"6",title:"Above average likelihood",description:"Above average likelihood of the presence of children in the household"},{id:"7",title:"Moderately high likelihood",description:"Moderately high likelihood of the presence of children in the household"},{id:"8",title:"High likelihood",description:"High likelihood of the presence of children in the household"},{id:"9",title:"Very high likelihood",description:"Very high likelihood of the presence of children in the household"},{id:"10",title:"Extremely high likelihood",description:"Extremely high likelihood of the presence of children in the household"}],head_of_household_age:[{id:"1",title:"Under 20",description:"The age of the consumer (combination of both actual and estimated) is under 20 years"},{id:"2",title:"20 to 24 years",description:"The age of the consumer (combination of both actual and estimated) is between 20 to 24 years"},{id:"3",title:"25 to 29 years",description:"The age of the consumer (combination of both actual and estimated) is between 25 to 29 years"},{id:"4",title:"30 to 34 years",description:"The age of the consumer (combination of both actual and estimated) is between 30 to 34 years"},{id:"5",title:"35 to 39 years",description:"The age of the consumer (combination of both actual and estimated) is between 35 to 39 years"},{id:"6",title:"40 to 44 years",description:"The age of the consumer (combination of both actual and estimated) is between 40 to 44 years"},{id:"7",title:"45 to 49 years",description:"The age of the consumer (combination of both actual and estimated) is between 45 to 49 years"},{id:"8",title:"50 to 54 years",description:"The age of the consumer (combination of both actual and estimated) is between 50 to 54 years"},{id:"9",title:"55 to 59 years",description:"The age of the consumer (combination of both actual and estimated) is between 55 to 59 years"},{id:"10",title:"60 to 64 years",description:"The age of the consumer (combination of both actual and estimated) is between 60 to 64 years"},{id:"11",title:"65 to 69 years",description:"The age of the consumer (combination of both actual and estimated) is between 65 to 69 years"},{id:"12",title:"70 to 74 years",description:"The age of the consumer (combination of both actual and estimated) is between 70 to 74 years"},{id:"13",title:"75 to 79 years",description:"The age of the consumer (combination of both actual and estimated) is between 75 to 79 years"},{id:"14",title:"80 to 84 years",description:"The age of the consumer (combination of both actual and estimated) is between 80 to 84 years"},{id:"15",title:">= 85 year",description:"The age of the consumer (combination of both actual and estimated) is greater than or equal to 85 years"}],head_of_household_lifestage:[{id:"1",title:"Young families",description:"Families, Extended Families and Single Parents under 35"},{id:"2",title:"Independent Youth",description:"Couples, Singles and Homesharers under 35"},{id:"3",title:"Maturing Couples and Families",description:"Families, Couples, Extended Families and Single Parents aged 35-44"},{id:"4",title:"Maturing Independence",description:"Singles and Homesharers aged 35-54"},{id:"5",title:"Established Couples and Families",description:"Families, Couples, Extended Families and Single Parents aged 45-54"},{id:"6",title:"Older Couples and Families",description:"Families, Couples, Extended Families and Single Parents aged 55-64"},{id:"7",title:"Older Independence",description:"Singles and Homesharers aged 55-64"},{id:"8",title:"Elderly Families",description:"Families, Extended Families and Single Parents 65 and over"},{id:"9",title:"Elderly Couples",description:"Couples 65 and over"},{id:"10",title:"Elderly Singles",description:"Singles and Homesharers 65 and over"}],household_composition:[{id:"1",title:"Families",description:"The residential property is likely to contain a family unit which is made up of two adults with children"},{id:"2",title:"Extended Families",description:"The residential property is likely to contain an extended family unit which is made up of three or more adults with the same surname"},{id:"3",title:"Couples",description:"The residential property is likely to contain people living as a couple which is made up of two adults and no children"},{id:"4",title:"Single Parent",description:"The residential property is likely to contain an single parent family unit which is made up of one adult with children"},{id:"5",title:"Single",description:"The residential property is likely to contain a single adult only"},{id:"6",title:"Homeshares",description:"The residential property is likely to contain a home share environment which is made up of three or more adults with different surnames"}],mosaic_group:[{id:"A",title:"Corporate Ladder Kings",description:"Educated professionals living in large houses in desirable areas, looking for balance to their busy lives and planning for the future"},{id:"B",title:"Reaping The Rewards",description:"Established conservative older couples living comfortable lives in high quality houses, appreciating traditional country pursuits"},{id:"C",title:"Tractors And Trees",description:"Hard working rural farming families living in large comfortable homes, who are engaged in the local community"},{id:"D",title:"Smartphone Savvies",description:"Young technology savvy home sharers or families living comfortably in urban apartments with strong career goals and a positive outlook"},{id:"E",title:"Watching The Pennies",description:"Older families and couples with conservative views, who are careful with their money and have an easy going attitude to life"},{id:"F",title:"Generation Next",description:"Young singles who are studying or just starting out in their careers, living in urban apartments, and love technology and new gadgets"},{id:"G",title:"Crochet Communities",description:"Elderly singles living in rented apartments, living off their investments, who watch TV and listen to the radio to stay in touch"},{id:"H",title:"Bargains, Benefits And Babies",description:"Young families focused on their young kids who are finding it hard to balance work and leisure, feeling burdened by their finances"},{id:"I",title:"Extended Cultural Living",description:"Mixed family Maori or Pacific Islander households with a strong family focus, financially stressed and making do"}],mosaic_segment:[{id:"01_1",title:"More elderly, more employers and more single person households"},{id:"01_2",title:"More children, higher affluent and more 7+ person households"},{id:"02_1",title:"Much more elderly, more employers and more single person households"},{id:"02_2",title:"More overseas born, more 7+ person households and higher property ownership"},{id:"02_3",title:"Much more children, higher affluent and higher property ownership"},{id:"03_1",title:"Shorter time at address, higher affluent, larger properties"},{id:"03_2",title:"More elderly, longer time at address and more urban"},{id:"03_3",title:"Much longer time at address, more highly educated and more single person households"},{id:"04_1",title:"Higher affluent, higher household income, larger properties"},{id:"04_2",title:"Longer time at address, more single person households and more urban"},{id:"04_3",title:"Less educated, higher property ownership and more rural"},{id:"05_1",title:"More highly educated, higher affluent and larger properties"},{id:"05_2",title:"More children, more employees and more urban"},{id:"05_3",title:"More children, less educated, higher property ownership"},{id:"06_1",title:"More employers, smaller properties and more rural"},{id:"06_2",title:"More elderly, more 3+ children households, less educated"},{id:"06_3",title:"More highly educated, more overseas born and more urban"},{id:"06_4",title:"Higher affluence, higher household income, larger properties"},{id:"07_1",title:"Much more elderly, much more 3+ children households, higher affluence"},{id:"07_2",title:"More elderly, more employers, larger properties"},{id:"07_3",title:"More children, more longer time at address, more 7+ person households"},{id:"08_1",title:"Less educated, smaller properties, more rural"},{id:"08_2",title:"More elderly, more New Zealand born, higher property ownership"},{id:"08_3",title:"Much more overseas born, higher household income, more urban"},{id:"09_1",title:"Much more children, shorter time at address, much lower property ownership"},{id:"09_2",title:"Much longer time at address, much less educated, more single person households"},{id:"09_3",title:"More elderly, higher affluent, much higher property ownership"},{id:"10_1",title:"Much more children, more employees, much higher property ownership"},{id:"10_2",title:"Much more elderly, much more single person households, much more urban"},{id:"10_3",title:"Much longer time at address, much more employers, more rural"},{id:"10_4",title:"Shorter time at address, higher affluent, more 7+ person households"},{id:"11_1",title:"More no children households, more longer time at address, higher property ownership"},{id:"11_2",title:"Much more no children households, much lower property ownership, much smaller properties"},{id:"11_3",title:"More 3+ children households, less educated, larger properties"},{id:"12_1",title:"More longer time at address, more overseas born, more urban"},{id:"12_2",title:"Much more no children households, more highly educated, lower property ownership"},{id:"12_3",title:"More elderly, more longer time at address, less educated"},{id:"12_4",title:"Much more children, shorter time at address, more rural"},{id:"13_1",title:"More highly educated, higher affluence, higher household income"},{id:"13_2",title:"Much longer time at address, much less educated, much more single person households"},{id:"13_3",title:"Much more deprived, much more 7+ person households, much lower property ownership"},{id:"14_1",title:"More single person households, lower property ownership, smaller properties"},{id:"14_2",title:"More New Zealand born, more single person households, smaller properties"},{id:"14_3",title:"Higher household income, much more 7+ person households, larger properties"},{id:"15_1",title:"More children, more New Zealand born, more single person households"},{id:"15_2",title:"Much more 7+ person households, much lower property ownership, smaller properties"},{id:"15_3",title:"More highly educated, higher household income, larger properties"},{id:"16_1",title:"Much more overseas born, much more 7+ person households, much lower property ownership"},{id:"16_2",title:"More children, less educated, much more New Zealand born"},{id:"16_3",title:"More highly educated, higher affluence, higher household income"},{id:"16_4",title:"Much less educated, lower household income, much more single person households"},{id:"17_1",title:"More no children households, more longer time at address, smaller properties"},{id:"17_2",title:"More elderly, more employers, larger properties"},{id:"17_3",title:"More elderly, more deprived, more urban"},{id:"18_1",title:"More no children households, more 7+ person households, more urban"},{id:"18_2",title:"More highly educated, higher affluent, more single person households"},{id:"18_3",title:"More deprived, more single person households, larger properties"},{id:"18_4",title:"More children, more 7+ person households, lower property ownership"},{id:"18_5",title:"More elderly, lower household income, smaller properties"},{id:"19_1",title:"More children, higher household income, higher property ownership"},{id:"19_2",title:"Much less educated, much more deprived, lower household income"},{id:"19_3",title:"More no children households, more highly educated, more single person households"},{id:"19_4",title:"More elderly, higher affluent, more 7+ person households"},{id:"20_1",title:"More children, less educated, larger properties"},{id:"20_2",title:"More highly educated, much smaller properties, much more urban"},{id:"21_1",title:"More New Zealand born, much more deprived, much more single person households"},{id:"21_2",title:"Much more overseas born, much more 7+ person households, much higher property ownership"},{id:"21_3",title:"Much more no children households, lower property ownership, much smaller properties"},{id:"22_1",title:"More longer time at address, much more 7+ person households, larger properties"},{id:"22_2",title:"Much more overseas born, much more deprived, much smaller properties"},{id:"23_1",title:"More highly educated, much more employers, much smaller properties"},{id:"23_2",title:"More children, less educated, higher property ownership"},{id:"23_3",title:"More highly educated, more overseas born, higher household income"},{id:"23_4",title:"Much longer time at address, much less educated, more rural"},{id:"24_1",title:"More children, much more deprived, larger properties"},{id:"24_2",title:"Much more elderly, much more single person households, much smaller properties"},{id:"25_1",title:"More no children households, lower property ownership, much more urban"},{id:"25_2",title:"Much longer time at address, much more deprived, more rural"},{id:"25_3",title:"Much more elderly, more 3+ children households, more urban"},{id:"26_1",title:"Much more children, more overseas born, more urban"},{id:"26_2",title:"Much more elderly, much longer time at address, more rural"},{id:"26_3",title:"More children, higher household income, more 7+ person households"},{id:"26_4",title:"Much more elderly, more single person households, more rural"},{id:"27_1",title:"More elderly, larger properties, much more urban"},{id:"27_2",title:"Much more children, more highly educated, higher affluence"},{id:"27_3",title:"Much more elderly, much more single person households, smaller properties"},{id:"27_4",title:"More longer time at address, less educated, higher property ownership"},{id:"28_1",title:"More children, more deprived, more 7+ person households"},{id:"28_2",title:"More children, more 7+ person households, more urban"},{id:"28_3",title:"More 7+ person households, larger properties, more rural"},{id:"28_4",title:"Much more elderly, much more single person households, much smaller properties"},{id:"29_1",title:"More employers, more single person households, smaller properties"},{id:"29_2",title:"Much more deprived, more employers, much more 7+ person households"},{id:"29_3",title:"More children, shorter time at address, lower property ownership"},{id:"29_4",title:"No children households, more longer time at address, less educated, higher property ownership, urban"},{id:"30_1",title:"Much more deprived, much more single person households, much smaller properties"},{id:"30_2",title:"More overseas born, higher household income, much more 7+ person households"},{id:"30_3",title:"Much more children, more longer time at address, more 7+ person households"},{id:"31_1",title:"More New Zealand born, more single person households, higher property ownership"},{id:"31_2",title:"Much less educated, much more deprived, much more 7+ person households"},{id:"31_3",title:"More highly educated, more single person households, smaller properties"},{id:"31_4",title:"More children, much more 7+ person households, larger properties"},{id:"32_1",title:"Much more overseas born, much more deprived, much smaller properties"},{id:"32_2",title:"More longer time at address, much more New Zealand born, much higher property ownership"},{id:"33_1",title:"More employers, smaller properties, more rural"},{id:"33_2",title:"Much more deprived, lower property ownership, more urban"},{id:"33_3",title:"More employees, higher property ownership, more urban"},{id:"34_1",title:"More longer time at address, more New Zealand born, much higher property ownership"},{id:"34_2",title:"More single person households, much higher property ownership, more rural"},{id:"34_3",title:"Much more overseas born, lower property ownership, much more 7+ person households"}],mosaic_type_group:[{id:"A01",title:"Power Professionals",description:"Highly prosperous households comprising of finance savvy professionals and business owners, living in grand houses in desirable areas"},{id:"A02",title:"Wine And Waves",description:"Older, well-educated families on the verge of retirement enjoying the rewards of successful careers, using the internet to keep updated"},{id:"A03",title:"Double Dollar Suits ",description:"Well-educated double income professional couples with young families, using technology to juggle their busy lifestyles"},{id:"A04",title:"Gold Plated Ride-Ons",description:"Wealthy families with large modern properties on the rural outskirts, enjoying the outdoors and have practical technology needs"},{id:"B05",title:"Tea And Biscuits",description:"Financially secure, older couples who have paid off their homes close to the city, now enjoying more time for their hobbies"},{id:"B06",title:"Outdoor Wanderers",description:"Established couples or families living in larger rural properties who embrace the outdoor life and enjoy traditional country pursuits"},{id:"B07",title:"Backwater Bowls",description:"Traditional New Zealander wealthy retired couples, enjoying a comfortable settled life in regional towns, leading healthy lifestyles"},{id:"C08",title:"High Speed Harvesters",description:"Older hard working families with farming backgrounds in rural locations, transferring the running of the farm to the next generation"},{id:"C09",title:"Farming The Wilderness",description:"Practically minded rural farming families with modest lifestyles, financial burdens, and a passion for fast cars and motorbikes"},{id:"C10",title:"Rustic Retirees",description:"Semi-retired older couples living in outer regional and rural locations, with simple tastes, enjoying the local community spirit"},{id:"D11",title:"Working The Network",description:"Financially established and techno savvy, highly educated singles who own their urban apartments and enjoy a fast paced lifestyle"},{id:"D12",title:"Hash Tag Look At Me ",description:"Fashion focused, social and technologically astute younger families, renting modern properties in the major cities"},{id:"D13",title:"Sharing Spaces",description:"Middle-aged home sharers, living in the suburbs who enjoy social networking and trying to find a balance between work and play"},{id:"D14",title:"Touchscreens And Takeaways",description:"Extended families in modern suburban houses, with low disposable income who like to stand out and are influenced by their social sphere"},{id:"D15",title:"Halftime Hopes",description:"Financially comfortable families who require technology to be practical, living in city apartments and optimistic about the future"},{id:"E16",title:"Carefree Suburbia",description:"Older families keeping an eye on their finances but enjoying an easy going life using traditional media to stay informed and up to date"},{id:"E17",title:"Creatures Of Habit",description:"Elderly couples enjoying a stress free life while residing in segregated neighbourhoods, and listening to the radio to stay in touch"},{id:"E18",title:"Mortgages And Microwaves",description:"Hands-on people who enjoy fixing and tinkering with cars and an active outdoor lifestyle who are balancing large financial commitments"},{id:"E19",title:"Newspapers And Knitting",description:"Senior, mainly divorced singles, retired and financially comfortable with traditional values, preferring bricks and mortar to online"},{id:"F20",title:"Turbo Treadmills",description:"Driven, degree-educated individuals in early stages of their careers, living in shared spaces and using their mobile to stay connected"},{id:"F21",title:"Win The Better Life",description:"Younger singles living in shared rental apartments where job security is important and are searching for something better in life"},{id:"F22",title:"Just Add Water ",description:"Young students in full time study who are connected 24/7, living in campus accommodation, spending their free time with friends"},{id:"G23",title:"Messaging Motorheads",description:"Mix of older and young singles renting in the suburbs, heavy texters and social networkers wanting to be taken seriously"},{id:"G24",title:"Community Greys ",description:"Retired, mainly single, elderly, living off their investments in retirement villages and taking each day as it comes"},{id:"G25",title:"Talkback And Telly",description:"Price sensitive seniors, renting government housing in rural locations, living a low-key lifestyle to keep on top of their finances"},{id:"H26",title:"Fishing For A Bargain",description:"Mature, dual income, family centric households in mortgaged moderate sized homes, on a tight budget and enjoy hunting for bargains"},{id:"H27",title:"Hiring The Lifestyle",description:"Shopping fanatic young families in small homes, with average incomes, who love loyalty cards and coupons, and pay attention to adverts"},{id:"H28",title:"Remote Controlling",description:"Busy mixed families on low incomes in rented government housing, where kids come first and who impulse purchase for the latest gadgets"},{id:"H29",title:"Stately Renters ",description:"Older single parents of Maori descent, living in state housing, who feel quite isolated and have financial challenges"},{id:"H30",title:"Kids And Cars ",description:"Single parents with young kids, living in some of the poorer areas with strong focus on their kids and a preference for online shopping"},{id:"I31",title:"Window Shopping Strugglers",description:"Ethnic minorities living in large multi family households struggling on low incomes, but with an active social life"},{id:"I32",title:"Square Eyes And Empty Pockets",description:"Singles on low incomes or benefits, living in Government housing, with a low key lifestyle and high television and radio consumption"},{id:"I33",title:"Extending The Benefits",description:"Large multi-family Maori households on low income or benefits,who enjoy down to earth pursuits and more traditional media channels"},{id:"I34",title:"Play Dough And Pizza",description:"Mixed family Maori and Pacific Islander households, with a strong focus on their young children but struggling financially"}]},R={locality_class_code:[{id:"A",title:"ALIAS ONLY LOCALITY"},{id:"D",title:"DISTRICT"},{id:"G",title:"GAZETTED LOCALITY"},{id:"H",title:"HUNDRED"},{id:"I",title:"INDIGENOUS LOCATION",description:"Location identified in the Australian government indigenous programs and policy locations (AGIL) dataset available at http://data.gov.au"},{id:"M",title:"MANUALLY VALIDATED"},{id:"T",title:"TOPOGRAPHIC LOCALITY"},{id:"U",title:"UNOFFICIAL SUBURB"},{id:"V",title:"UNOFFICIAL TOPOGRAPHIC FEATURE"}]},N=function(){function t(o){var t=this;this.countryDropdown=[],this.componentsCollectionMap=new Map,this.metadataCollectionMap=new Map,this.geocodes=new p,this.cvHousehold=new p,this.tooltipDescriptionMap=new Map,this.premiumLocationInsightMap=new Map,this.baseUrl="https://api.experianaperture.io/",this.datasetsEndpoint="address/datasets/v1",this.searchEndpoint="address/search/v1",this.lookupV2Endpoint="address/lookup/v2",this.validateEndpoint="address/validate/v1",this.promptsetEndpoint="address/promptsets/v1",this.stepInEndpoint="address/suggestions/stepin/v1",this.refineEndpoint="address/suggestions/refine/v1",this.enrichmentEndpoint="enrichment/v2",this.poweredByLogo={element:null,create:function(e){var o={text:"".concat(this.svg," Powered by Experian"),format:""},t=e.createListItem(o);return t.classList.add("powered-by-experian"),e.list.parentNode.appendChild(t),t},destroy:function(e){this.element&&(e.list.parentNode.removeChild(this.element),this.element=void 0)},svg:'\n Experian logo\n \n \n \n \n \n \n \n \n '},this.result={formattedAddressContainer:null,lastAddressField:null,generateAddressLineRequired:!1,show:function(o){if(t.searchSpinner.hide(),t.picklist.hide(),t.lastSearchTerm="",t.searchType===e.AUTOCOMPLETE||o.result.address&&o.result.confidence!==a.NO_MATCHES){t.inputs.forEach((function(e){return e.value=""})),t.result.calculateIfAddressLineGenerationRequired(),t.result.formattedAddressContainer=t.options.elements.formattedAddressContainer,!t.result.formattedAddressContainer&&t.result.generateAddressLineRequired&&t.result.createFormattedAddressContainer();for(var s=0;s0)for(var o=0;o0){for(var t=0,s=o;t?/";:£§º©®\s]+[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+|[^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3}[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3}[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3})$/;a.test(this.currentSearchTerm.trim())?(this.avMode=o.WHAT3WORDS,this.currentSearchTerm=this.currentSearchTerm.trim()):this.avMode!=o.LOOKUPV2&&(this.avMode=o.SEARCH),(a=/^\d{12}|\d{8}$/).test(this.currentSearchTerm.trim())&&(this.avMode=o.UDPRN,this.currentSearchTerm=this.currentSearchTerm.trim()),(this.currentSearchTerm.includes("locality",0)||this.currentSearchTerm.includes("postal_code",0))&&(this.avMode=o.LOOKUPV2),this.events.trigger("pre-search",this.currentSearchTerm),this.lastSearchTerm=this.currentSearchTerm,this.searchSpinner.hide(),this.searchSpinner.show();var r=void 0,n=void 0,l=void 0,c=void 0;switch(this.avMode){case o.WHAT3WORDS:c=this.generateLookupDataForApiCall(this.getWhat3WordsLookupValue(this.currentSearchTerm,!0),d.WHAT3WORDS.key),r=this.baseUrl+this.lookupV2Endpoint,n=[],l=this.picklist.showWhat3Words;break;case o.UDPRN:this.returnAddresses=!0,c=this.generateLookupDataForApiCall(this.currentSearchTerm,d.UDPRN.key),r=this.baseUrl+this.lookupV2Endpoint,n=[{key:"Add-Addresses",value:!0}],l=this.picklist.showLookup;break;case o.LOOKUPV2:var u=this.currentSearchTerm.split(",");this.lookupType=u[0],this.returnAddresses="true"===u[1];var p=u[2];c=this.generateLookupDataForApiCall(p.trim(),this.lookupType),r=this.baseUrl+this.lookupV2Endpoint,n=[{key:"Add-Addresses",value:!0}],l=this.picklist.showLookup;break;default:c=this.generateSearchDataForApiCall(),r=this.baseUrl+(this.searchType===e.VALIDATE?this.validateEndpoint:this.searchEndpoint),n=this.searchType===e.VALIDATE?[{key:"Add-Components",value:!0},{key:"Add-Metadata",value:!0}]:[],l=this.searchType===e.VALIDATE?this.result.handleValidateResponse:this.picklist.show}this.request.send(r,"POST",l,c,n)}else this.lastSearchTerm!==this.currentSearchTerm&&this.picklist.hide()},t.prototype.getKey=function(e){var o=e.key;switch(o){case"Down":case"ArrowDown":return"ArrowDown";case"Up":case"ArrowUp":return"ArrowUp";case"Spacebar":case" ":return" ";case"Escape":case"Esc":return"Escape";default:return o}},t.prototype.canSearch=function(){return this.options.enabled&&""!==this.currentSearchTerm&&this.currentSearchTerm.length>3&&this.lastSearchTerm!==this.currentSearchTerm&&this.currentCountryCode&&!0===this.hasSearchInputBeenReset},t.prototype.createPicklist=function(){var o=this;this.picklist=new u,this.picklist.maxSuggestions=25,this.picklist.tabCount=-1,this.picklist.show=function(t){var s;o.picklist.items=null==t?void 0:t.result.suggestions,o.picklist.handleCommonShowPicklistLogic(),(null===(s=o.picklist.items)||void 0===s?void 0:s.length)>0?(o.picklist.refine.isNeeded(t)&&o.picklist.refine.createInput(t.result.suggestions_prompt,t.result.suggestions_key),o.searchType===e.VALIDATE&&o.picklist.displaySuggestionsHeader(),o.picklist.items.forEach((function(e){var t=o.picklist.createListItem(e);o.picklist.list.appendChild(t),o.picklist.listen(t)})),o.searchType===e.VALIDATE&&o.picklist.displayUseAddressEnteredFooter(),o.picklist.scrollIntoViewIfNeeded()):o.picklist.handleEmptyPicklist(t),o.poweredByLogo.element=o.poweredByLogo.element||o.poweredByLogo.create(o.picklist),o.events.trigger("post-picklist-create",o.picklist.items)},this.picklist.showWhat3Words=function(e){var t;o.picklist.what3wordsItems=null==e?void 0:e.result.suggestions,o.picklist.handleCommonShowPicklistLogic(),(null===(t=o.picklist.what3wordsItems)||void 0===t?void 0:t.length)>0?(o.picklist.what3wordsItems.forEach((function(e){var t=o.picklist.createWhat3WordsListItem(e);o.picklist.list.appendChild(t),o.picklist.listen(t)})),o.picklist.scrollIntoViewIfNeeded()):o.picklist.handleEmptyPicklist(e),o.poweredByLogo.element=o.poweredByLogo.element||o.poweredByLogo.create(o.picklist),o.events.trigger("post-picklist-create",o.picklist.items)},this.picklist.showLookup=function(e){var t=o.returnAddresses?null==e?void 0:e.result.addresses:null==e?void 0:e.result.suggestions;o.picklist.handleCommonShowPicklistLogic(),(null==t?void 0:t.length)>0?(t.forEach((function(e){var t=o.returnAddresses?o.picklist.createLookupListItem(e):o.picklist.createLookupSuggestionListItem(e);o.picklist.list.appendChild(t),o.picklist.listen(t)})),o.picklist.scrollIntoViewIfNeeded()):o.picklist.handleEmptyPicklist(e),o.poweredByLogo.element=o.poweredByLogo.element||o.poweredByLogo.create(o.picklist),o.events.trigger("post-picklist-create",o.picklist.items)},this.picklist.handleCommonShowPicklistLogic=function(){var e;o.picklist.currentItem=null,o.picklist.size=null===(e=o.picklist.items)||void 0===e?void 0:e.length,o.picklist.resetTabCount(),o.searchSpinner.hide(),o.picklist.list=o.picklist.list||o.picklist.createList(),o.picklist.list.innerHTML="",o.picklist.useAddressEntered.destroy(),o.events.trigger("pre-picklist-create",o.picklist.items)},this.picklist.hide=function(){if(o.picklist.currentItem=null,o.picklist.useAddressEntered.destroy(),o.poweredByLogo.destroy(o.picklist),o.inputs){var t=o.searchType===e.SINGLELINE?o.inputs.length-1:0;o.inputs[t].classList.remove("showing-suggestions")}o.picklist.list&&(o.picklist.container.remove(),o.picklist.list=void 0)},this.picklist.handleEmptyPicklist=function(e){var t;o.picklist.useAddressEntered.element=o.picklist.useAddressEntered.element||o.picklist.useAddressEntered.create(null===(t=e.result)||void 0===t?void 0:t.confidence),o.picklist.scrollIntoViewIfNeeded(),"function"==typeof o.picklist.handleEmptyPicklistCallback&&o.picklist.handleEmptyPicklistCallback()},this.picklist.displaySuggestionsHeader=function(){var e=document.querySelector(".picklist-suggestions-header")||document.createElement("div");e.classList.add("picklist-suggestions-header"),e.innerText="Suggestions:",o.picklist.list.parentNode.insertBefore(e,o.picklist.list)},this.picklist.displayUseAddressEnteredFooter=function(){var e=document.querySelector(".picklist-use-entered-container")||document.createElement("div");e.classList.add("picklist-use-entered-container"),o.picklist.list.parentNode.insertBefore(e,o.picklist.list.nextElementSibling);var t=document.querySelector(".picklist-use-entered-header")||document.createElement("div");t.classList.add("picklist-use-entered-header"),t.innerText="Or use address entered:",e.appendChild(t);var s=document.querySelector(".picklist-use-entered-option")||document.createElement("div");s.classList.add("picklist-use-entered-option"),s.innerText=o.currentSearchTerm.replace(/,+/g,", "),s.addEventListener("click",o.picklist.useAddressEntered.click),e.appendChild(s)},this.picklist.scrollIntoViewIfNeeded=function(){var e=o.picklist.container.getBoundingClientRect().top<0,t=o.picklist.container.getBoundingClientRect().bottom>window.innerHeight;(e||t)&&o.picklist.container.scrollIntoView()},this.picklist.useAddressEntered={element:null,create:function(e){var t={text:"".concat(e," ").concat(o.options.useAddressEnteredText)},s=o.picklist.createListItem(t);return s.classList.add("use-address-entered"),s.setAttribute("title","Enter address manually"),o.picklist.list=o.picklist.list||o.picklist.createList(),o.picklist.list.parentNode.insertBefore(s,o.picklist.container.firstChild),s.addEventListener("click",o.picklist.useAddressEntered.click),s},destroy:function(){o.picklist.useAddressEntered.element&&(o.picklist.list.parentNode.removeChild(o.picklist.useAddressEntered.element),o.picklist.useAddressEntered.element=void 0)},click:function(){var e={result:{confidence:"No matches",address:{address_line_1:"",address_line_2:"",address_line_3:"",locality:"",region:"",postal_code:"",country:""}}};if(o.currentSearchTerm){var t=o.currentSearchTerm.split(",");t[0]&&(e.result.address.address_line_1=t[0]),t[1]&&(e.result.address.address_line_2=t[1]),t[2]&&(e.result.address.address_line_3=t[2]);for(var s=3;si.length-1&&(o.picklist.tabCount=0,t=!0);var a=i[o.picklist.tabCount],d=o.picklist.list.querySelector(".selected");d&&d.classList.remove("selected"),a.classList.add("selected"),o.picklist.currentItem=a;var r=o.picklist.list.offsetTop,n=o.picklist.list.offsetTop+o.picklist.list.offsetHeight,l=o.picklist.list.scrollTop,c=a.offsetTop,u=a.offsetTop+a.offsetHeight,p=a.offsetHeight;t?o.picklist.list.scrollTop=0:s?o.picklist.list.scrollTop=999:u+p>n?o.picklist.list.scrollTop=l+p:c-p-r";t=t.substring(0,o[s][0])+i+t.substring(o[s][1])}return t},this.picklist.listen=function(e){e.addEventListener("click",o.picklist.pick.bind(null,e))},this.picklist.checkEnter=function(e){if("Enter"===e.key||"Tab"===e.key){var t=void 0;1===o.picklist.size?t=o.picklist.list.querySelectorAll("div")[0]:o.picklist.currentItem&&(t=o.picklist.currentItem),t&&o.picklist.pick(t)}},this.picklist.pick=function(t){if(o.events.trigger("post-picklist-selection",t),t.classList.contains(d.WHAT3WORDS.key)){var s=t.getElementsByTagName("div");return o.returnAddresses=!0,void o.lookup(s[0].innerHTML)}e.LOOKUPV2!==o.searchType||o.returnAddresses?t.getAttribute("format")?o.format(t.getAttribute("format")):o.refine(t.getAttribute("refine")):o.formatLookupLocalityWithoutAddresses(t)}},t.prototype.formatLookupLocalityWithoutAddresses=function(e){this.result.updateAddressLine("locality",e.getAttribute("town_name"),"address-line-input"),this.result.updateAddressLine("region",e.getAttribute("region_name"),"address-line-input"),this.result.updateAddressLine("postal_code",e.getAttribute("postal_code_name"),"address-line-input"),this.result.updateAddressLine("country",e.getAttribute("country"),"address-line-input");var o=d.POSTAL_CODE.key===this.lookupType?"postal_code_key":"locality_key";this.result.createSearchAgainLink(),this.events.trigger("post-formatting-lookup",e.getAttribute(o),e)},t.prototype.format=function(e){this.events.trigger("pre-formatting-search",e),this.searchSpinner.hide();var o={layouts:["default"],layout_format:"default",attributes:this.getEnrichmentAttributes(e.split("/")[6])};this.request.send(e,"POST",this.result.show,JSON.stringify(o),[{key:"Add-Components",value:!0},{key:"Add-Metadata",value:!0},{key:"Add-Enrichment",value:!0}])},t.prototype.refine=function(e){this.events.trigger("pre-refinement",e),this.searchSpinner.hide(),this.request.send("".concat(this.baseUrl).concat(this.stepInEndpoint,"/").concat(e),"GET",this.picklist.show)},t.prototype.lookup=function(e){this.events.trigger("pre-lookup",e),this.searchSpinner.hide();var o=this.generateLookupDataForApiCall(e,d.WHAT3WORDS.key),t=this.baseUrl+this.lookupV2Endpoint,s=this.picklist.showLookup;this.request.send(t,"POST",s,o,[{key:"Add-Addresses",value:!0}])},t.prototype.populateResponseToMap=function(e,o,t,s){if(e)for(var i=function(e,i){if(!o.has(e))return"continue";var d=o.get(e);if(t&&t.has(e)){var r=t.get(e),n=Object.values(r).find((function(e){return e.id===i}));n&&a.tooltipDescriptionMap.set(d,n.title)}s.set(d,i)},a=this,d=0,r=e;d=200&&a.currentRequest.status<400){var s=JSON.parse(a.currentRequest.responseText);o(s)}else a.instance.searchSpinner.hide(),a.instance.events.trigger("request-error",e),a.instance.events.trigger("request-error-".concat(a.currentRequest.status),e)},this.currentRequest.onerror=function(e){a.instance.searchSpinner.hide(),a.instance.events.trigger("request-error",e)},this.currentRequest.ontimeout=function(e){a.instance.searchSpinner.hide(),a.instance.events.trigger("request-timeout",e)},this.currentRequest.send(t)},e}();!function(e){e.COMBINED="combined",e.AUTOCOMPLETE="autocomplete",e.VALIDATE="validate",e.SINGLELINE="singleline",e.TYPEDOWN="typedown",e.LOOKUPV2="lookupv2"}(e||(e={})),function(e){e[e.SEARCH=1]="SEARCH",e[e.WHAT3WORDS=2]="WHAT3WORDS",e[e.UDPRN=3]="UDPRN",e[e.LOCALITY=4]="LOCALITY",e[e.POSTAL_CODE=5]="POSTAL_CODE",e[e.MPAN=6]="MPAN",e[e.MPRN=7]="MPRN"}(s||(s={}));var a,d={WHAT3WORDS:{key:"what3words",display:"What3Words",dataset:[["gb-address"],["gb-additional-multipleresidence"],["gb-additional-notyetbuilt"],["gb-additional-notyetbuilt","gb-additional-multipleresidence"]]},UDPRN:{key:"udprn",display:"UDPRN",dataset:[["gb-address"],["gb-additional-multipleresidence"],["gb-additional-notyetbuilt"],["gb-additional-notyetbuilt","gb-additional-multipleresidence"]]},MPAN:{key:"mpan",display:"MPAN",dataset:[["gb-additional-electricity"],["gb-additional-electricity","gb-additional-gas"]]},MPRN:{key:"mprn",display:"MPRN",dataset:[["gb-additional-gas"],["gb-additional-electricity","gb-additional-gas"]]},POSTAL_CODE:{key:"postal_code",display:"Postal code",dataset:[]},LOCALITY:{key:"locality",display:"Locality",dataset:[]}},r={TRUE:{key:"true",display:"True"},FALSE:{key:"false",display:"False"}};!function(e){e.NO_MATCHES="No matches",e.VERIFIED_MATCH="Verified match",e.INTERACTION_REQUIRED="Interaction required",e.PREMISES_PARTIAL="Premises partial",e.STREET_PARTIAL="Street partial",e.MULTIPLE_MATCHES="Multiple matches"}(a||(a={}));var n={avMode:s.SEARCH,searchType:e.COMBINED,input:{placeholderText:"Start typing an address...",applyFocus:!1},formattedAddressContainer:{showHeading:!1,headingType:"h3",validatedHeadingText:"Validated address",manualHeadingText:"Manual address entered"},searchAgain:{visible:!0,text:"Search again"},useAddressEnteredText:" - Use address entered or try again...",useSpinner:!1,language:"en",addressLineLabels:["address_line_1","address_line_2","address_line_3","locality","region","postal_code","country"]},l=[{country:"Afghanistan",iso3Code:"AFG",iso2Code:"AF",datasetCodes:["af-address-ed"],searchTypes:["singleline","validate"]},{country:"Afghanistan",iso3Code:"AFG",iso2Code:"AF",datasetCodes:["af-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Albania",iso3Code:"ALB",iso2Code:"AL",datasetCodes:["al-address-ed"],searchTypes:["singleline","validate"]},{country:"Albania",iso3Code:"ALB",iso2Code:"AL",datasetCodes:["al-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Algeria",iso3Code:"DZA",iso2Code:"DZ",datasetCodes:["dz-address-ed"],searchTypes:["singleline","validate"]},{country:"Algeria",iso3Code:"DZA",iso2Code:"DZ",datasetCodes:["dz-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"American Samoa",iso3Code:"ASM",iso2Code:"AS",datasetCodes:["as-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Andorra",iso3Code:"AND",iso2Code:"AD",datasetCodes:["ad-address-ed"],searchTypes:["singleline","validate"]},{country:"Andorra",iso3Code:"AND",iso2Code:"AD",datasetCodes:["ad-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Angola",iso3Code:"AGO",iso2Code:"AO",datasetCodes:["ao-address-ed"],searchTypes:["singleline","validate"]},{country:"Angola",iso3Code:"AGO",iso2Code:"AO",datasetCodes:["ao-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Anguilla",iso3Code:"AIA",iso2Code:"AI",datasetCodes:["ai-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Antarctica",iso3Code:"ATA",iso2Code:"AQ",datasetCodes:["aq-address-ed"],searchTypes:["singleline","validate"]},{country:"Antigua and Barbuda",iso3Code:"ATG",iso2Code:"AG",datasetCodes:["ag-address-ed"],searchTypes:["singleline","validate"]},{country:"Antigua and Barbuda",iso3Code:"ATG",iso2Code:"AG",datasetCodes:["ag-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Argentina",iso3Code:"ARG",iso2Code:"AR",datasetCodes:["ar-address-ed"],searchTypes:["singleline","validate"]},{country:"Argentina",iso3Code:"ARG",iso2Code:"AR",datasetCodes:["ar-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Armenia",iso3Code:"ARM",iso2Code:"AM",datasetCodes:["am-address-ed"],searchTypes:["singleline","validate"]},{country:"Armenia",iso3Code:"ARM",iso2Code:"AM",datasetCodes:["am-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Aruba",iso3Code:"ABW",iso2Code:"AW",datasetCodes:["aw-address-ed"],searchTypes:["singleline","validate"]},{country:"Aruba",iso3Code:"ABW",iso2Code:"AW",datasetCodes:["aw-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Australia DataFusion",iso3Code:"AUS",iso2Code:"AU",datasetCodes:["au-address-datafusion"],searchTypes:["autocomplete","singleline","typedown","lookupv2"]},{country:"Australia Geocoded National Address",iso3Code:"AUS",iso2Code:"AU",datasetCodes:["au-address-gnaf"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2"]},{country:"Australia Postal Address",iso3Code:"AUS",iso2Code:"AU",datasetCodes:["au-address"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2"]},{country:"Austria",iso3Code:"AUT",iso2Code:"AT",datasetCodes:["at-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Austria",iso3Code:"AUT",iso2Code:"AT",datasetCodes:["az-address-ed"],searchTypes:["singleline","validate"]},{country:"Azerbaijan",iso3Code:"AZE",iso2Code:"AZ",datasetCodes:["az-address-ed"],searchTypes:["singleline","validate"]},{country:"Azerbaijan",iso3Code:"AZE",iso2Code:"AZ",datasetCodes:["az-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Bahamas",iso3Code:"BHS",iso2Code:"BS",datasetCodes:["bs-address-ed"],searchTypes:["singleline","validate"]},{country:"Bahamas",iso3Code:"BHS",iso2Code:"BS",datasetCodes:["bs-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Bahrain",iso3Code:"BHR",iso2Code:"BH",datasetCodes:["bh-address-ed"],searchTypes:["singleline","validate"]},{country:"Bahrain",iso3Code:"BHR",iso2Code:"BH",datasetCodes:["bh-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Bangladesh",iso3Code:"BGD",iso2Code:"BD",datasetCodes:["bd-address-ed"],searchTypes:["singleline","validate"]},{country:"Bangladesh",iso3Code:"BGD",iso2Code:"BD",datasetCodes:["bd-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Barbados",iso3Code:"BRB",iso2Code:"BB",datasetCodes:["bb-address-ed"],searchTypes:["singleline","validate"]},{country:"Barbados",iso3Code:"BRB",iso2Code:"BB",datasetCodes:["bb-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Belarus",iso3Code:"BLR",iso2Code:"BY",datasetCodes:["by-address-ed"],searchTypes:["singleline","validate"]},{country:"Belarus",iso3Code:"BLR",iso2Code:"BY",datasetCodes:["by-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Belgium",iso3Code:"BEL",iso2Code:"BE",datasetCodes:["be-address"],searchTypes:["singleline","typedown"]},{country:"Belgium",iso3Code:"BEL",iso2Code:"BE",datasetCodes:["be-address-ed"],searchTypes:[" validate"]},{country:"Belgium",iso3Code:"BEL",iso2Code:"BE",datasetCodes:["be-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Belize",iso3Code:"BLZ",iso2Code:"BZ",datasetCodes:["bz-address-ed"],searchTypes:["singleline","validate"]},{country:"Belize",iso3Code:"BLZ",iso2Code:"BZ",datasetCodes:["bz-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Benin",iso3Code:"BEN",iso2Code:"BJ",datasetCodes:["bj-address-ed"],searchTypes:["singleline","validate"]},{country:"Benin",iso3Code:"BEN",iso2Code:"BJ",datasetCodes:["bj-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Bermuda",iso3Code:"BMU",iso2Code:"BM",datasetCodes:["bm-address-ed"],searchTypes:["singleline","validate"]},{country:"Bermuda",iso3Code:"BMU",iso2Code:"BM",datasetCodes:["bm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Bhutan",iso3Code:"BTN",iso2Code:"BT",datasetCodes:["bt-address-ed"],searchTypes:["singleline","validate"]},{country:"Bhutan",iso3Code:"BTN",iso2Code:"BT",datasetCodes:["bt-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Bolivia",iso3Code:"BOL",iso2Code:"BO",datasetCodes:["bo-address-ed"],searchTypes:["singleline","validate"]},{country:"Bolivia",iso3Code:"BOL",iso2Code:"BO",datasetCodes:["bo-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Bonaire, Sint Eustatius and Saba",iso3Code:"BES",iso2Code:"BQ",datasetCodes:["bq-address-ed"],searchTypes:["singleline","validate"]},{country:"Bonaire, Sint Eustatius and Saba",iso3Code:"BES",iso2Code:"BQ",datasetCodes:["bq-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Bosnia and Herzegovina",iso3Code:"BIH",iso2Code:"BA",datasetCodes:["ba-address-ed"],searchTypes:["singleline","validate"]},{country:"Bosnia and Herzegovina",iso3Code:"BIH",iso2Code:"BA",datasetCodes:["ba-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Botswana",iso3Code:"BWA",iso2Code:"BW",datasetCodes:["bw-address-ed"],searchTypes:["singleline","validate"]},{country:"Botswana",iso3Code:"BWA",iso2Code:"BW",datasetCodes:["bw-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Brazil",iso3Code:"BRA",iso2Code:"BR",datasetCodes:["br-address-ed"],searchTypes:["singleline","validate"]},{country:"Brazil",iso3Code:"BRA",iso2Code:"BR",datasetCodes:["br-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Brunei Darussalam",iso3Code:"BRN",iso2Code:"BN",datasetCodes:["bn-address-ed"],searchTypes:["singleline","validate"]},{country:"Brunei Darussalam",iso3Code:"BRN",iso2Code:"BN",datasetCodes:["bn-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Bulgaria",iso3Code:"BGR",iso2Code:"BG",datasetCodes:["bg-address-ed"],searchTypes:["singleline","validate"]},{country:"Bulgaria",iso3Code:"BGR",iso2Code:"BG",datasetCodes:["bg-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Burkina Faso",iso3Code:"BFA",iso2Code:"BF",datasetCodes:["bf-address-ed"],searchTypes:["singleline","validate"]},{country:"Burkina Faso",iso3Code:"BFA",iso2Code:"BF",datasetCodes:["bf-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Burundi",iso3Code:"BDI",iso2Code:"BI",datasetCodes:["bi-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Cambodia",iso3Code:"KHM",iso2Code:"KH",datasetCodes:["kh-address-ed"],searchTypes:["singleline","validate"]},{country:"Cambodia",iso3Code:"KHM",iso2Code:"KH",datasetCodes:["kh-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Cameroon",iso3Code:"CMR",iso2Code:"CM",datasetCodes:["cm-address-ed"],searchTypes:["singleline","validate"]},{country:"Cameroon",iso3Code:"CMR",iso2Code:"CM",datasetCodes:["cm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Canada",iso3Code:"CAN",iso2Code:"CA",datasetCodes:["ca-address"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2"]},{country:"Cape Verde",iso3Code:"CPV",iso2Code:"CV",datasetCodes:["cv-address-ed"],searchTypes:["singleline","validate"]},{country:"Cape Verde",iso3Code:"CPV",iso2Code:"CV",datasetCodes:["cv-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Cayman Islands",iso3Code:"CYM",iso2Code:"KY",datasetCodes:["ky-address-ed"],searchTypes:["singleline","validate"]},{country:"Cayman Islands",iso3Code:"CYM",iso2Code:"KY",datasetCodes:["ky-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Central African Republic",iso3Code:"CAF",iso2Code:"CF",datasetCodes:["cf-address-ed"],searchTypes:["singleline","validate"]},{country:"Central African Republic",iso3Code:"CAF",iso2Code:"CF",datasetCodes:["cf-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Chad",iso3Code:"TCD",iso2Code:"TD",datasetCodes:["td-address-ed"],searchTypes:["singleline","validate"]},{country:"Chad",iso3Code:"TCD",iso2Code:"TD",datasetCodes:["td-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Chile",iso3Code:"CHL",iso2Code:"CL",datasetCodes:["cl-address-ed"],searchTypes:["singleline","validate"]},{country:"Chile",iso3Code:"CHL",iso2Code:"CL",datasetCodes:["cl-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"China",iso3Code:"CHN",iso2Code:"CN",datasetCodes:["cn-address-ed"],searchTypes:["singleline","validate"]},{country:"China",iso3Code:"CHN",iso2Code:"CN",datasetCodes:["cn-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Christmas Island",iso3Code:"CXR",iso2Code:"CX",datasetCodes:["cx-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Cocos Island",iso3Code:"CCK",iso2Code:"CC",datasetCodes:["cc-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Colombia",iso3Code:"COL",iso2Code:"CO",datasetCodes:["co-address-ed"],searchTypes:["singleline","validate"]},{country:"Colombia",iso3Code:"COL",iso2Code:"CO",datasetCodes:["co-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Comoros",iso3Code:"COM",iso2Code:"KM",datasetCodes:["km-address-ed"],searchTypes:["singleline","validate"]},{country:"Comoros",iso3Code:"COM",iso2Code:"KM",datasetCodes:["km-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Congo",iso3Code:"COG",iso2Code:"CG",datasetCodes:["cg-address-ed"],searchTypes:["singleline","validate"]},{country:"Congo",iso3Code:"COG",iso2Code:"CG",datasetCodes:["cg-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Congo, The Democratic Republic of the",iso3Code:"COD",iso2Code:"CD",datasetCodes:["cd-address-ed"],searchTypes:["singleline","validate"]},{country:"Congo, The Democratic Republic of the",iso3Code:"COD",iso2Code:"CD",datasetCodes:["cd-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Cook Islands",iso3Code:"COK",iso2Code:"CK",datasetCodes:["ck-address-ed"],searchTypes:["singleline","validate"]},{country:"Cook Islands",iso3Code:"COK",iso2Code:"CK",datasetCodes:["ck-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Costa Rica",iso3Code:"CRI",iso2Code:"CR",datasetCodes:["cr-address-ed"],searchTypes:["singleline","validate"]},{country:"Costa Rica",iso3Code:"CRI",iso2Code:"CR",datasetCodes:["cr-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Croatia",iso3Code:"HRV",iso2Code:"HR",datasetCodes:["hr-address-ed"],searchTypes:["singleline","validate"]},{country:"Croatia",iso3Code:"HRV",iso2Code:"HR",datasetCodes:["hr-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Cuba",iso3Code:"CUB",iso2Code:"CU",datasetCodes:["cu-address-ed"],searchTypes:["singleline","validate"]},{country:"Cuba",iso3Code:"CUB",iso2Code:"CU",datasetCodes:["cu-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Curaçao",iso3Code:"CUW",iso2Code:"CW",datasetCodes:["cw-address-ed"],searchTypes:["singleline","validate"]},{country:"Curaçao",iso3Code:"CUW",iso2Code:"CW",datasetCodes:["cw-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Cyprus",iso3Code:"CYP",iso2Code:"CY",datasetCodes:["cy-address-ed"],searchTypes:["singleline","validate"]},{country:"Cyprus",iso3Code:"CYP",iso2Code:"CY",datasetCodes:["cy-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Czech Republic",iso3Code:"CZE",iso2Code:"CZ",datasetCodes:["cz-address-ed"],searchTypes:["singleline","validate"]},{country:"Czech Republic",iso3Code:"CZE",iso2Code:"CZ",datasetCodes:["cz-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Côte d'Ivoire",iso3Code:"CIV",iso2Code:"CI",datasetCodes:["ci-address-ed"],searchTypes:["singleline","validate"]},{country:"Côte d'Ivoire",iso3Code:"CIV",iso2Code:"CI",datasetCodes:["ci-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Denmark",iso3Code:"DNK",iso2Code:"DK",datasetCodes:["dk-address"],searchTypes:["singleline","typedown","validate"]},{country:"Denmark",iso3Code:"DNK",iso2Code:"DK",datasetCodes:["dk-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Djibouti",iso3Code:"DJI",iso2Code:"DJ",datasetCodes:["dj-address-ed"],searchTypes:["singleline","validate"]},{country:"Djibouti",iso3Code:"DJI",iso2Code:"DJ",datasetCodes:["dj-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Dominica",iso3Code:"DMA",iso2Code:"DM",datasetCodes:["dm-address-ed"],searchTypes:["singleline","validate"]},{country:"Dominica",iso3Code:"DMA",iso2Code:"DM",datasetCodes:["dm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Dominican Republic",iso3Code:"DOM",iso2Code:"DO",datasetCodes:["do-address-ed"],searchTypes:["singleline","validate"]},{country:"Dominican Republic",iso3Code:"DOM",iso2Code:"DO",datasetCodes:["do-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Ecuador",iso3Code:"ECU",iso2Code:"EC",datasetCodes:["ec-address-ed"],searchTypes:["singleline","validate"]},{country:"Ecuador",iso3Code:"ECU",iso2Code:"EC",datasetCodes:["ec-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Egypt",iso3Code:"EGY",iso2Code:"EG",datasetCodes:["eg-address-ed"],searchTypes:["singleline","validate"]},{country:"Egypt",iso3Code:"EGY",iso2Code:"EG",datasetCodes:["eg-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"El Salvador",iso3Code:"SLV",iso2Code:"SV",datasetCodes:["sv-address-ed"],searchTypes:["singleline","validate"]},{country:"El Salvador",iso3Code:"SLV",iso2Code:"SV",datasetCodes:["sv-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Equatorial Guinea",iso3Code:"GNQ",iso2Code:"GQ",datasetCodes:["gq-address-ed"],searchTypes:["singleline","validate"]},{country:"Equatorial Guinea",iso3Code:"GNQ",iso2Code:"GQ",datasetCodes:["gq-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Eritrea",iso3Code:"ERI",iso2Code:"ER",datasetCodes:["er-address-ed"],searchTypes:["singleline","validate"]},{country:"Eritrea",iso3Code:"ERI",iso2Code:"ER",datasetCodes:["er-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Estonia",iso3Code:"EST",iso2Code:"EE",datasetCodes:["ee-address-ed"],searchTypes:["singleline","validate"]},{country:"Estonia",iso3Code:"EST",iso2Code:"EE",datasetCodes:["ee-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Ethiopia",iso3Code:"ETH",iso2Code:"ET",datasetCodes:["et-address-ed"],searchTypes:["singleline","validate"]},{country:"Ethiopia",iso3Code:"ETH",iso2Code:"ET",datasetCodes:["et-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Falkland Islands (Malvinas)",iso3Code:"FLK",iso2Code:"FK",datasetCodes:["fk-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Faroe Islands",iso3Code:"FRO",iso2Code:"FO",datasetCodes:["fo-address-ed"],searchTypes:["singleline","validate"]},{country:"Faroe Islands",iso3Code:"FRO",iso2Code:"FO",datasetCodes:["fo-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Fiji",iso3Code:"FJI",iso2Code:"FJ",datasetCodes:["fj-address-ed"],searchTypes:["singleline","validate"]},{country:"Fiji",iso3Code:"FJI",iso2Code:"FJ",datasetCodes:["fj-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Finland",iso3Code:"FIN",iso2Code:"FI",datasetCodes:["fi-address"],searchTypes:["singleline","typedown"]},{country:"Finland",iso3Code:"FIN",iso2Code:"FI",datasetCodes:["fi-address-ed"],searchTypes:["validate"]},{country:"Finland",iso3Code:"FIN",iso2Code:"FI",datasetCodes:["fi-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"France Street Level",iso3Code:"FRA",iso2Code:"FR",datasetCodes:["fr-address-streetlevel"],searchTypes:["singleline","typedown","validate"]},{country:"France Sub-Premises Level",iso3Code:"FRA",iso2Code:"FR",datasetCodes:["fr-additional-hexaline3"],searchTypes:["autocomplete","singleline","typedown"]},{country:"France Premises Level",iso3Code:"FRA",iso2Code:"FR",datasetCodes:["fr-address"],searchTypes:["singleline","typedown","validate"]},{country:"French Guiana",iso3Code:"GUF",iso2Code:"GF",datasetCodes:["gf-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"French Polynesia",iso3Code:"PYF",iso2Code:"PF",datasetCodes:["pf-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Gabon",iso3Code:"GAB",iso2Code:"GA",datasetCodes:["ga-address-ed"],searchTypes:["singleline","validate"]},{country:"Gabon",iso3Code:"GAB",iso2Code:"GA",datasetCodes:["ga-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Gambia",iso3Code:"GMB",iso2Code:"GM",datasetCodes:["gm-address-ed"],searchTypes:["singleline","validate"]},{country:"Gambia",iso3Code:"GMB",iso2Code:"GM",datasetCodes:["gm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Georgia",iso3Code:"GEO",iso2Code:"GE",datasetCodes:["ge-address-ed"],searchTypes:["singleline","validate"]},{country:"Georgia",iso3Code:"GEO",iso2Code:"GE",datasetCodes:["ge-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Germany",iso3Code:"DEU",iso2Code:"DE",datasetCodes:["de-address"],searchTypes:["singleline","typedown","validate"]},{country:"Germany",iso3Code:"DEU",iso2Code:"DE",datasetCodes:["de-address-ed"],searchTypes:["validate"]},{country:"Germany",iso3Code:"DEU",iso2Code:"DE",datasetCodes:["de-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Ghana",iso3Code:"GHA",iso2Code:"GH",datasetCodes:["gh-address-ed"],searchTypes:["singleline","validate"]},{country:"Ghana",iso3Code:"GHA",iso2Code:"GH",datasetCodes:["gh-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Gibraltar",iso3Code:"GIB",iso2Code:"GI",datasetCodes:["gi-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Greece",iso3Code:"GRC",iso2Code:"GR",datasetCodes:["gr-address-ed"],searchTypes:["singleline","validate"]},{country:"Greece",iso3Code:"GRC",iso2Code:"GR",datasetCodes:["gr-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Greenland",iso3Code:"GRL",iso2Code:"GL",datasetCodes:["gl-address-ed"],searchTypes:["singleline","validate"]},{country:"Greenland",iso3Code:"GRL",iso2Code:"GL",datasetCodes:["gl-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Grenada",iso3Code:"GRD",iso2Code:"GD",datasetCodes:["gd-address-ed"],searchTypes:["singleline","validate"]},{country:"Grenada",iso3Code:"GRD",iso2Code:"GD",datasetCodes:["gd-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Guadeloupe",iso3Code:"GLP",iso2Code:"GP",datasetCodes:["gp-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Guam",iso3Code:"GUM",iso2Code:"GU",datasetCodes:["gu-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Guatemala",iso3Code:"GTM",iso2Code:"GT",datasetCodes:["gt-address-ed"],searchTypes:["singleline","validate"]},{country:"Guatemala",iso3Code:"GTM",iso2Code:"GT",datasetCodes:["gt-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Guinea",iso3Code:"GIN",iso2Code:"GN",datasetCodes:["gn-address-ed"],searchTypes:["singleline","validate"]},{country:"Guinea",iso3Code:"GIN",iso2Code:"GN",datasetCodes:["gn-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Guinea-Bissau",iso3Code:"GNB",iso2Code:"GW",datasetCodes:["gw-address-ed"],searchTypes:["singleline","validate"]},{country:"Guinea-Bissau",iso3Code:"GNB",iso2Code:"GW",datasetCodes:["gw-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Guyana",iso3Code:"GUY",iso2Code:"GY",datasetCodes:["gy-address-ed"],searchTypes:["singleline","validate"]},{country:"Guyana",iso3Code:"GUY",iso2Code:"GY",datasetCodes:["gy-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Haiti",iso3Code:"HTI",iso2Code:"HT",datasetCodes:["ht-address-ed"],searchTypes:["singleline","validate"]},{country:"Haiti",iso3Code:"HTI",iso2Code:"HT",datasetCodes:["ht-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Honduras",iso3Code:"HND",iso2Code:"HN",datasetCodes:["hn-address-ed"],searchTypes:["singleline","validate"]},{country:"Honduras",iso3Code:"HND",iso2Code:"HN",datasetCodes:["hn-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Hong Kong",iso3Code:"HKG",iso2Code:"HK",datasetCodes:["hk-address-ed"],searchTypes:["singleline","validate"]},{country:"Hong Kong",iso3Code:"HKG",iso2Code:"HK",datasetCodes:["hk-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Hungary",iso3Code:"HUN",iso2Code:"HU",datasetCodes:["hu-address-ed"],searchTypes:["singleline","validate"]},{country:"Hungary",iso3Code:"HUN",iso2Code:"HU",datasetCodes:["hu-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Iceland",iso3Code:"ISL",iso2Code:"IS",datasetCodes:["is-address-ed"],searchTypes:["singleline","validate"]},{country:"Iceland",iso3Code:"ISL",iso2Code:"IS",datasetCodes:["is-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"India",iso3Code:"IND",iso2Code:"IN",datasetCodes:["in-address-ed"],searchTypes:["singleline","validate"]},{country:"India",iso3Code:"IND",iso2Code:"IN",datasetCodes:["in-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Indonesia",iso3Code:"IDN",iso2Code:"ID",datasetCodes:["id-address-ed"],searchTypes:["singleline","validate"]},{country:"Indonesia",iso3Code:"IDN",iso2Code:"ID",datasetCodes:["id-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Iran, Islamic Republic of",iso3Code:"IRN",iso2Code:"IR",datasetCodes:["ir-address-ed"],searchTypes:["singleline","validate"]},{country:"Iran, Islamic Republic of",iso3Code:"IRN",iso2Code:"IR",datasetCodes:["ir-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Iraq",iso3Code:"IRQ",iso2Code:"IQ",datasetCodes:["iq-address-ed"],searchTypes:["singleline","validate"]},{country:"Iraq",iso3Code:"IRQ",iso2Code:"IQ",datasetCodes:["iq-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Ireland",iso3Code:"IRL",iso2Code:"IE",datasetCodes:["ie-address"],searchTypes:["singleline","typedown"]},{country:"Ireland",iso3Code:"IRL",iso2Code:"IE",datasetCodes:["ie-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Ireland Eircode",iso3Code:"IRL",iso2Code:"IE",datasetCodes:["ie-additional-eircode"],searchTypes:["autocomplete","lookupv2"]},{country:"Ireland ECAD",iso3Code:"IRL",iso2Code:"IE",datasetCodes:["ie-address-ecad"],searchTypes:["autocomplete","lookupv2","singleline","typedown"]},{country:"Israel",iso3Code:"ISR",iso2Code:"IL",datasetCodes:["il-address-ed"],searchTypes:["singleline","validate"]},{country:"Israel",iso3Code:"ISR",iso2Code:"IL",datasetCodes:["il-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Italy",iso3Code:"ITA",iso2Code:"IT",datasetCodes:["it-address-ed"],searchTypes:["singleline","validate"]},{country:"Italy",iso3Code:"ITA",iso2Code:"IT",datasetCodes:["it-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Jamaica",iso3Code:"JAM",iso2Code:"JM",datasetCodes:["jm-address-ed"],searchTypes:["singleline","validate"]},{country:"Jamaica",iso3Code:"JAM",iso2Code:"JM",datasetCodes:["jm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Japan",iso3Code:"JPN",iso2Code:"JP",datasetCodes:["jp-address-ed"],searchTypes:["singleline","validate"]},{country:"Japan",iso3Code:"JPN",iso2Code:"JP",datasetCodes:["jp-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Jordan",iso3Code:"JOR",iso2Code:"JO",datasetCodes:["jo-address-ed"],searchTypes:["singleline","validate"]},{country:"Jordan",iso3Code:"JOR",iso2Code:"JO",datasetCodes:["jo-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Kazakhstan",iso3Code:"KAZ",iso2Code:"KZ",datasetCodes:["kz-address-ed"],searchTypes:["singleline","validate"]},{country:"Kazakhstan",iso3Code:"KAZ",iso2Code:"KZ",datasetCodes:["kz-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Kenya",iso3Code:"KEN",iso2Code:"KE",datasetCodes:["ke-address-ed"],searchTypes:["singleline","validate"]},{country:"Kenya",iso3Code:"KEN",iso2Code:"KE",datasetCodes:["ke-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Kiribati",iso3Code:"KIR",iso2Code:"KI",datasetCodes:["ki-address-ed"],searchTypes:["singleline","validate"]},{country:"Kiribati",iso3Code:"KIR",iso2Code:"KI",datasetCodes:["ki-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Korea, Democratic People's Republic of",iso3Code:"PRK",iso2Code:"KP",datasetCodes:["kp-address-ed"],searchTypes:["singleline","validate"]},{country:"Korea, Democratic People's Republic of",iso3Code:"PRK",iso2Code:"KP",datasetCodes:["kp-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Korea, Republic of",iso3Code:"KOR",iso2Code:"KR",datasetCodes:["kr-address-ed"],searchTypes:["singleline","validate"]},{country:"Korea, Republic of",iso3Code:"KOR",iso2Code:"KR",datasetCodes:["kr-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Kosovo",iso3Code:"KOS",iso2Code:"XK",datasetCodes:["kv-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Kuwait",iso3Code:"KWT",iso2Code:"KW",datasetCodes:["kw-address-ed"],searchTypes:["singleline","validate"]},{country:"Kuwait",iso3Code:"KWT",iso2Code:"KW",datasetCodes:["kw-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Kyrgyzstan",iso3Code:"KGZ",iso2Code:"KG",datasetCodes:["kg-address-ed"],searchTypes:["singleline","validate"]},{country:"Kyrgyzstan",iso3Code:"KGZ",iso2Code:"KG",datasetCodes:["kg-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Laos",iso3Code:"LAO",iso2Code:"LA",datasetCodes:["la-address-ed"],searchTypes:["singleline","validate"]},{country:"Laos",iso3Code:"LAO",iso2Code:"LA",datasetCodes:["la-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Latvia",iso3Code:"LVA",iso2Code:"LV",datasetCodes:["lv-address-ed"],searchTypes:["singleline","validate"]},{country:"Latvia",iso3Code:"LVA",iso2Code:"LV",datasetCodes:["lv-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Lebanon",iso3Code:"LBN",iso2Code:"LB",datasetCodes:["lb-address-ed"],searchTypes:["singleline","validate"]},{country:"Lebanon",iso3Code:"LBN",iso2Code:"LB",datasetCodes:["lb-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Lesotho",iso3Code:"LSO",iso2Code:"LS",datasetCodes:["ls-address-ed"],searchTypes:["singleline","validate"]},{country:"Lesotho",iso3Code:"LSO",iso2Code:"LS",datasetCodes:["ls-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Liberia",iso3Code:"LBR",iso2Code:"LR",datasetCodes:["lr-address-ed"],searchTypes:["singleline","validate"]},{country:"Liberia",iso3Code:"LBR",iso2Code:"LR",datasetCodes:["lr-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Libya",iso3Code:"LBY",iso2Code:"LY",datasetCodes:["ly-address-ed"],searchTypes:["singleline","validate"]},{country:"Libya",iso3Code:"LBY",iso2Code:"LY",datasetCodes:["ly-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Liechtenstein",iso3Code:"LIE",iso2Code:"LI",datasetCodes:["li-address-ed"],searchTypes:["singleline","validate"]},{country:"Liechtenstein",iso3Code:"LIE",iso2Code:"LI",datasetCodes:["li-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Lithuania",iso3Code:"LTU",iso2Code:"LT",datasetCodes:["lt-address-ed"],searchTypes:["singleline","validate"]},{country:"Lithuania",iso3Code:"LTU",iso2Code:"LT",datasetCodes:["lt-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Luxembourg",iso3Code:"LUX",iso2Code:"LU",datasetCodes:["lu-address"],searchTypes:["singleline","typedown","validate"]},{country:"Luxembourg",iso3Code:"LUX",iso2Code:"LU",datasetCodes:["lu-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Macau",iso3Code:"MAC",iso2Code:"MO",datasetCodes:["lv-address-ed"],searchTypes:["singleline","validate"]},{country:"Macau",iso3Code:"MAC",iso2Code:"MO",datasetCodes:["lv-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Madagascar",iso3Code:"MDG",iso2Code:"MG",datasetCodes:["mo-address-ed"],searchTypes:["singleline","validate"]},{country:"Madagascar",iso3Code:"MDG",iso2Code:"MG",datasetCodes:["mo-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Malawi",iso3Code:"MWI",iso2Code:"MW",datasetCodes:["mw-address-ed"],searchTypes:["singleline","validate"]},{country:"Malawi",iso3Code:"MWI",iso2Code:"MW",datasetCodes:["mw-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Malaysia",iso3Code:"MYS",iso2Code:"MY",datasetCodes:["my-address-ed"],searchTypes:["singleline","validate"]},{country:"Malaysia",iso3Code:"MYS",iso2Code:"MY",datasetCodes:["my-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Maldives",iso3Code:"MDV",iso2Code:"MV",datasetCodes:["mv-address-ed"],searchTypes:["singleline","validate"]},{country:"Maldives",iso3Code:"MDV",iso2Code:"MV",datasetCodes:["mv-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Mali",iso3Code:"MLI",iso2Code:"ML",datasetCodes:["ml-address-ed"],searchTypes:["singleline","validate"]},{country:"Mali",iso3Code:"MLI",iso2Code:"ML",datasetCodes:["ml-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Malta",iso3Code:"MLT",iso2Code:"MT",datasetCodes:["mt-address-ed"],searchTypes:["singleline","validate"]},{country:"Malta",iso3Code:"MLT",iso2Code:"MT",datasetCodes:["mt-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Marshall Islands",iso3Code:"MHL",iso2Code:"MH",datasetCodes:["mh-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Martinique",iso3Code:"MTQ",iso2Code:"MQ",datasetCodes:["mq-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Mauritania",iso3Code:"MRT",iso2Code:"MR",datasetCodes:["mr-address-ed"],searchTypes:["singleline","validate"]},{country:"Mauritania",iso3Code:"MRT",iso2Code:"MR",datasetCodes:["mr-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Mauritius",iso3Code:"MUS",iso2Code:"MU",datasetCodes:["mu-address-ed"],searchTypes:["singleline","validate"]},{country:"Mauritius",iso3Code:"MUS",iso2Code:"MU",datasetCodes:["mu-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Mayotte",iso3Code:"MYT",iso2Code:"YT",datasetCodes:["yt-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Mexico",iso3Code:"MEX",iso2Code:"MX",datasetCodes:["mx-address-ed"],searchTypes:["singleline","validate"]},{country:"Mexico",iso3Code:"MEX",iso2Code:"MX",datasetCodes:["mx-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Micronesia, Federated States of",iso3Code:"FSM",iso2Code:"FM",datasetCodes:["fm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Moldova",iso3Code:"MDA",iso2Code:"MD",datasetCodes:["md-address-ed"],searchTypes:["singleline","validate"]},{country:"Moldova",iso3Code:"MDA",iso2Code:"MD",datasetCodes:["md-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Monaco",iso3Code:"MCO",iso2Code:"MC",datasetCodes:["mc-address-ed"],searchTypes:["singleline","validate"]},{country:"Monaco",iso3Code:"MCO",iso2Code:"MC",datasetCodes:["mc-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Mongolia",iso3Code:"MNG",iso2Code:"MN",datasetCodes:["mn-address-ed"],searchTypes:["singleline","validate"]},{country:"Mongolia",iso3Code:"MNG",iso2Code:"MN",datasetCodes:["mn-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Montenegro",iso3Code:"MNE",iso2Code:"ME",datasetCodes:["me-address-ed"],searchTypes:["singleline","validate"]},{country:"Montenegro",iso3Code:"MNE",iso2Code:"ME",datasetCodes:["me-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Montserrat",iso3Code:"MSR",iso2Code:"MS",datasetCodes:["ms-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Morocco",iso3Code:"MAR",iso2Code:"MA",datasetCodes:["ma-address-ed"],searchTypes:["singleline","validate"]},{country:"Morocco",iso3Code:"MAR",iso2Code:"MA",datasetCodes:["ma-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Mozambique",iso3Code:"MOZ",iso2Code:"MZ",datasetCodes:["mz-address-ed"],searchTypes:["singleline","validate"]},{country:"Mozambique",iso3Code:"MOZ",iso2Code:"MZ",datasetCodes:["mz-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Myanmar",iso3Code:"MMR",iso2Code:"MM",datasetCodes:["mm-address-ed"],searchTypes:["singleline","validate"]},{country:"Myanmar",iso3Code:"MMR",iso2Code:"MM",datasetCodes:["mm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Namibia",iso3Code:"NAM",iso2Code:"NA",datasetCodes:["na-address-ed"],searchTypes:["singleline","validate"]},{country:"Namibia",iso3Code:"NAM",iso2Code:"NA",datasetCodes:["na-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Nauru",iso3Code:"NRU",iso2Code:"NR",datasetCodes:["nr-address-ed"],searchTypes:["singleline","validate"]},{country:"Nauru",iso3Code:"NRU",iso2Code:"NR",datasetCodes:["nr-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Nepal",iso3Code:"NPL",iso2Code:"NP",datasetCodes:["np-address-ed"],searchTypes:["singleline","validate"]},{country:"Nepal",iso3Code:"NPL",iso2Code:"NP",datasetCodes:["np-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Netherlands",iso3Code:"NLD",iso2Code:"NL",datasetCodes:["nl-address"],searchTypes:["singleline","typedown","validate"]},{country:"Netherlands",iso3Code:"NLD",iso2Code:"NL",datasetCodes:["nl-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"New Caledonia",iso3Code:"NCL",iso2Code:"NC",datasetCodes:["nc-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"New Zealand DataFusion",iso3Code:"NZL",iso2Code:"NZ",datasetCodes:["nz-additional-datafusion"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2"]},{country:"New Zealand Postal Address",iso3Code:"NZL",iso2Code:"NZ",datasetCodes:["nz-address"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2"]},{country:"Nicaragua",iso3Code:"NIC",iso2Code:"NI",datasetCodes:["ni-address-ed"],searchTypes:["singleline","validate"]},{country:"Nicaragua",iso3Code:"NIC",iso2Code:"NI",datasetCodes:["ni-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Niger",iso3Code:"NER",iso2Code:"NE",datasetCodes:["ne-address-ed"],searchTypes:["singleline","validate"]},{country:"Niger",iso3Code:"NER",iso2Code:"NE",datasetCodes:["ne-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Nigeria",iso3Code:"NGA",iso2Code:"NG",datasetCodes:["ng-address-ed"],searchTypes:["singleline","validate"]},{country:"Nigeria",iso3Code:"NGA",iso2Code:"NG",datasetCodes:["ng-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Niue",iso3Code:"NIU",iso2Code:"NU",datasetCodes:["nu-address-ed"],searchTypes:["singleline","validate"]},{country:"Niue",iso3Code:"NIU",iso2Code:"NU",datasetCodes:["nu-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Norfolk Island",iso3Code:"NFK",iso2Code:"NF",datasetCodes:["nf-address-ed"],searchTypes:["singleline","validate"]},{country:"Norfolk Island",iso3Code:"NFK",iso2Code:"NF",datasetCodes:["nf-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"North Macedonia",iso3Code:"MKD",iso2Code:"MK",datasetCodes:["mk-address-ed"],searchTypes:["singleline","validate"]},{country:"North Macedonia",iso3Code:"MKD",iso2Code:"MK",datasetCodes:["mk-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Northern Mariana Islands",iso3Code:"MNP",iso2Code:"MP",datasetCodes:["mp-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Norway",iso3Code:"NOR",iso2Code:"NO",datasetCodes:["no-address"],searchTypes:["singleline","typedown"]},{country:"Norway",iso3Code:"NOR",iso2Code:"NO",datasetCodes:["no-address-ed"],searchTypes:["validate"]},{country:"Norway",iso3Code:"NOR",iso2Code:"NO",datasetCodes:["no-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Oman",iso3Code:"OMN",iso2Code:"OM",datasetCodes:["om-address-ed"],searchTypes:["singleline","validate"]},{country:"Oman",iso3Code:"OMN",iso2Code:"OM",datasetCodes:["om-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Pakistan",iso3Code:"PAK",iso2Code:"PK",datasetCodes:["pk-address-ed"],searchTypes:["singleline","validate"]},{country:"Pakistan",iso3Code:"PAK",iso2Code:"PK",datasetCodes:["pk-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Palau",iso3Code:"PLW",iso2Code:"PW",datasetCodes:["pw-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Palestine",iso3Code:"PSE",iso2Code:"PS",datasetCodes:["ps-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Panama",iso3Code:"PAN",iso2Code:"PA",datasetCodes:["pa-address-ed"],searchTypes:["singleline","validate"]},{country:"Panama",iso3Code:"PAN",iso2Code:"PA",datasetCodes:["pa-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Papua New Guinea",iso3Code:"PNG",iso2Code:"PG",datasetCodes:["pg-address-ed"],searchTypes:["singleline","validate"]},{country:"Papua New Guinea",iso3Code:"PNG",iso2Code:"PG",datasetCodes:["pg-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Paraguay",iso3Code:"PRY",iso2Code:"PY",datasetCodes:["py-address-ed"],searchTypes:["singleline","validate"]},{country:"Paraguay",iso3Code:"PRY",iso2Code:"PY",datasetCodes:["py-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Peru",iso3Code:"PER",iso2Code:"PE",datasetCodes:["pe-address-ed"],searchTypes:["singleline","validate"]},{country:"Peru",iso3Code:"PER",iso2Code:"PE",datasetCodes:["pe-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Philippines",iso3Code:"PHL",iso2Code:"PH",datasetCodes:["ph-address-ed"],searchTypes:["singleline","validate"]},{country:"Philippines",iso3Code:"PHL",iso2Code:"PH",datasetCodes:["ph-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Pitcairn Islands",iso3Code:"PCN",iso2Code:"PN",datasetCodes:["pn-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Poland",iso3Code:"POL",iso2Code:"PL",datasetCodes:["pl-address-ed"],searchTypes:["singleline","validate"]},{country:"Poland",iso3Code:"POL",iso2Code:"PL",datasetCodes:["pl-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Portugal",iso3Code:"PRT",iso2Code:"PT",datasetCodes:["pt-address-ed"],searchTypes:["singleline","validate"]},{country:"Portugal",iso3Code:"PRT",iso2Code:"PT",datasetCodes:["pt-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Qatar",iso3Code:"QAT",iso2Code:"QA",datasetCodes:["qa-address-ed"],searchTypes:["singleline","validate"]},{country:"Qatar",iso3Code:"QAT",iso2Code:"QA",datasetCodes:["qa-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Romania",iso3Code:"ROU",iso2Code:"RO",datasetCodes:["ro-address-ed"],searchTypes:["singleline","validate"]},{country:"Romania",iso3Code:"ROU",iso2Code:"RO",datasetCodes:["ro-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Russian Federation",iso3Code:"RUS",iso2Code:"RU",datasetCodes:["ru-address-ed"],searchTypes:["singleline","validate"]},{country:"Russian Federation",iso3Code:"RUS",iso2Code:"RU",datasetCodes:["ru-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Rwanda",iso3Code:"RWA",iso2Code:"RW",datasetCodes:["rw-address-ed"],searchTypes:["singleline","validate"]},{country:"Rwanda",iso3Code:"RWA",iso2Code:"RW",datasetCodes:["rw-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Réunion",iso3Code:"REU",iso2Code:"RE",datasetCodes:["re-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Saint Barthélemy",iso3Code:"BLM",iso2Code:"BL",datasetCodes:["bl-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Saint Helena",iso3Code:"SHN",iso2Code:"SH",datasetCodes:["sh-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Saint Kitts and Nevis",iso3Code:"KNA",iso2Code:"KN",datasetCodes:["kn-address-ed"],searchTypes:["singleline","validate"]},{country:"Saint Kitts and Nevis",iso3Code:"KNA",iso2Code:"KN",datasetCodes:["kn-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Saint Lucia",iso3Code:"LCA",iso2Code:"LC",datasetCodes:["lc-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Saint Martin",iso3Code:"MAF",iso2Code:"MF",datasetCodes:["mf-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Saint Pierre and Miquelon",iso3Code:"SPM",iso2Code:"PM",datasetCodes:["pm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Saint Vincent and the Grenadines",iso3Code:"VCT",iso2Code:"VC",datasetCodes:["vc-address-ed"],searchTypes:["singleline","validate"]},{country:"Saint Vincent and the Grenadines",iso3Code:"VCT",iso2Code:"VC",datasetCodes:["vc-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Samoa",iso3Code:"WSM",iso2Code:"WS",datasetCodes:["ws-address-ed"],searchTypes:["singleline","validate"]},{country:"Samoa",iso3Code:"WSM",iso2Code:"WS",datasetCodes:["ws-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"San Marino",iso3Code:"SMR",iso2Code:"SM",datasetCodes:["sm-address-ed"],searchTypes:["singleline","validate"]},{country:"San Marino",iso3Code:"SMR",iso2Code:"SM",datasetCodes:["sm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Sao Tome and Principe",iso3Code:"STP",iso2Code:"ST",datasetCodes:["st-address-ed"],searchTypes:["singleline","validate"]},{country:"Sao Tome and Principe",iso3Code:"STP",iso2Code:"ST",datasetCodes:["st-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Saudi Arabia",iso3Code:"SAU",iso2Code:"SA",datasetCodes:["sa-address-ed"],searchTypes:["singleline","validate"]},{country:"Saudi Arabia",iso3Code:"SAU",iso2Code:"SA",datasetCodes:["sa-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Senegal",iso3Code:"SEN",iso2Code:"SN",datasetCodes:["sn-address-ed"],searchTypes:["singleline","validate"]},{country:"Senegal",iso3Code:"SEN",iso2Code:"SN",datasetCodes:["sn-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Serbia",iso3Code:"SRB",iso2Code:"RS",datasetCodes:["rs-address-ed"],searchTypes:["singleline","validate"]},{country:"Serbia",iso3Code:"SRB",iso2Code:"RS",datasetCodes:["rs-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Seychelles",iso3Code:"SYC",iso2Code:"SC",datasetCodes:["sc-address-ed"],searchTypes:["singleline","validate"]},{country:"Seychelles",iso3Code:"SYC",iso2Code:"SC",datasetCodes:["sc-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Sierra Leone",iso3Code:"SLE",iso2Code:"SL",datasetCodes:["sl-address-ed"],searchTypes:["singleline","validate"]},{country:"Sierra Leone",iso3Code:"SLE",iso2Code:"SL",datasetCodes:["sl-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Singapore",iso3Code:"SGP",iso2Code:"SG",datasetCodes:["sg-address"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2"]},{country:"Sint Maarten",iso3Code:"SXM",iso2Code:"SX",datasetCodes:["sx-address-ed"],searchTypes:["singleline","validate"]},{country:"Sint Maarten",iso3Code:"SXM",iso2Code:"SX",datasetCodes:["sx-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Slovakia",iso3Code:"SVK",iso2Code:"SK",datasetCodes:["sk-address-ed"],searchTypes:["singleline","validate"]},{country:"Slovakia",iso3Code:"SVK",iso2Code:"SK",datasetCodes:["sk-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Slovenia",iso3Code:"SVN",iso2Code:"SI",datasetCodes:["si-address-ed"],searchTypes:["singleline","validate"]},{country:"Slovenia",iso3Code:"SVN",iso2Code:"SI",datasetCodes:["si-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Solomon Islands",iso3Code:"SLB",iso2Code:"SB",datasetCodes:["sb-address-ed"],searchTypes:["singleline","validate"]},{country:"Solomon Islands",iso3Code:"SLB",iso2Code:"SB",datasetCodes:["sb-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Somalia",iso3Code:"SOM",iso2Code:"SO",datasetCodes:["so-address-ed"],searchTypes:["singleline","validate"]},{country:"Somalia",iso3Code:"SOM",iso2Code:"SO",datasetCodes:["so-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"South Africa",iso3Code:"ZAF",iso2Code:"ZA",datasetCodes:["za-address-ed"],searchTypes:["singleline","validate"]},{country:"South Africa",iso3Code:"ZAF",iso2Code:"ZA",datasetCodes:["za-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"South Georgia and the South Sandwich Islands",iso3Code:"SGS",iso2Code:"GS",datasetCodes:["gs-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"South Sudan",iso3Code:"SSD",iso2Code:"SS",datasetCodes:["ss-address-ed"],searchTypes:["singleline","validate"]},{country:"South Sudan",iso3Code:"SSD",iso2Code:"SS",datasetCodes:["ss-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Spain",iso3Code:"ESP",iso2Code:"ES",datasetCodes:["es-address"],searchTypes:["singleline","typedown"]},{country:"Spain",iso3Code:"ESP",iso2Code:"ES",datasetCodes:["es-address-ed"],searchTypes:["validate"]},{country:"Spain",iso3Code:"ESP",iso2Code:"ES",datasetCodes:["es-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Sri Lanka",iso3Code:"LKA",iso2Code:"LK",datasetCodes:["lk-address-ed"],searchTypes:["singleline","validate"]},{country:"Sudan",iso3Code:"SDN",iso2Code:"SD",datasetCodes:["sd-address-ed"],searchTypes:["singleline","validate"]},{country:"Sudan",iso3Code:"SDN",iso2Code:"SD",datasetCodes:["sd-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Suriname",iso3Code:"SUR",iso2Code:"SR",datasetCodes:["sr-address-ed"],searchTypes:["singleline","validate"]},{country:"Suriname",iso3Code:"SUR",iso2Code:"SR",datasetCodes:["sr-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Svalbard and Jan Mayen Islands",iso3Code:"SJM",iso2Code:"SJ",datasetCodes:["sj-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Swaziland (Eswatini)",iso3Code:"SWZ",iso2Code:"SZ",datasetCodes:["sz-address-ed"],searchTypes:["singleline","validate"]},{country:"Swaziland (Eswatini)",iso3Code:"SWZ",iso2Code:"SZ",datasetCodes:["sz-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Sweden",iso3Code:"SWE",iso2Code:"SE",datasetCodes:["se-address"],searchTypes:["singleline","typedown"]},{country:"Sweden",iso3Code:"SWE",iso2Code:"SE",datasetCodes:["se-address-ed"],searchTypes:["validate"]},{country:"Sweden",iso3Code:"SWE",iso2Code:"SE",datasetCodes:["se-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Switzerland",iso3Code:"CHE",iso2Code:"CH",datasetCodes:["ch-address"],searchTypes:["singleline","typedown"]},{country:"Switzerland",iso3Code:"CHE",iso2Code:"CH",datasetCodes:["ch-address-ed"],searchTypes:["validate"]},{country:"Switzerland",iso3Code:"CHE",iso2Code:"CH",datasetCodes:["ch-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Syria",iso3Code:"SYR",iso2Code:"SY",datasetCodes:["sy-address-ed"],searchTypes:["singleline","validate"]},{country:"Syria",iso3Code:"SYR",iso2Code:"SY",datasetCodes:["sy-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Taiwan",iso3Code:"TWN",iso2Code:"TW",datasetCodes:["tw-address-ed"],searchTypes:["singleline","validate"]},{country:"Taiwan",iso3Code:"TWN",iso2Code:"TW",datasetCodes:["tw-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Tajikistan",iso3Code:"TJK",iso2Code:"TJ",datasetCodes:["tj-address-ed"],searchTypes:["singleline","validate"]},{country:"Tajikistan",iso3Code:"TJK",iso2Code:"TJ",datasetCodes:["tj-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Tanzania",iso3Code:"TZA",iso2Code:"TZ",datasetCodes:["tz-address-ed"],searchTypes:["singleline","validate"]},{country:"Tanzania",iso3Code:"TZA",iso2Code:"TZ",datasetCodes:["tz-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Thailand",iso3Code:"THA",iso2Code:"TH",datasetCodes:["th-address-ed"],searchTypes:["singleline","validate"]},{country:"Thailand",iso3Code:"THA",iso2Code:"TH",datasetCodes:["th-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Timor-Leste",iso3Code:"TLS",iso2Code:"TL",datasetCodes:["tl-address-ed"],searchTypes:["singleline","validate"]},{country:"Timor-Leste",iso3Code:"TLS",iso2Code:"TL",datasetCodes:["tl-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Togo",iso3Code:"TGO",iso2Code:"TG",datasetCodes:["tg-address-ed"],searchTypes:["singleline","validate"]},{country:"Togo",iso3Code:"TGO",iso2Code:"TG",datasetCodes:["tg-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Tokelau",iso3Code:"TKL",iso2Code:"TK",datasetCodes:["tk-address-ed"],searchTypes:["singleline","validate"]},{country:"Tokelau",iso3Code:"TKL",iso2Code:"TK",datasetCodes:["tk-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Tonga",iso3Code:"TON",iso2Code:"TO",datasetCodes:["to-address-ed"],searchTypes:["singleline","validate"]},{country:"Tonga",iso3Code:"TON",iso2Code:"TO",datasetCodes:["to-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Trinidad and Tobago",iso3Code:"TTO",iso2Code:"TT",datasetCodes:["tt-address-ed"],searchTypes:["singleline","validate"]},{country:"Trinidad and Tobago",iso3Code:"TTO",iso2Code:"TT",datasetCodes:["tt-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Tunisia",iso3Code:"TUN",iso2Code:"TN",datasetCodes:["tn-address-ed"],searchTypes:["singleline","validate"]},{country:"Tunisia",iso3Code:"TUN",iso2Code:"TN",datasetCodes:["tn-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Turkey",iso3Code:"TUR",iso2Code:"TR",datasetCodes:["tr-address-ed"],searchTypes:["singleline","validate"]},{country:"Turkey",iso3Code:"TUR",iso2Code:"TR",datasetCodes:["tr-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Turkish Republic of Northern Cyprus",iso3Code:"NCY",iso2Code:"CY",datasetCodes:["ny-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Turkmenistan",iso3Code:"TKM",iso2Code:"TM",datasetCodes:["tm-address-ed"],searchTypes:["singleline","validate"]},{country:"Turkmenistan",iso3Code:"TKM",iso2Code:"TM",datasetCodes:["tm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Turks and Caicos Islands",iso3Code:"TCA",iso2Code:"TC",datasetCodes:["tc-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Tuvalu",iso3Code:"TUV",iso2Code:"TV",datasetCodes:["tv-address-ed"],searchTypes:["singleline","validate"]},{country:"Tuvalu",iso3Code:"TUV",iso2Code:"TV",datasetCodes:["tv-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Uganda",iso3Code:"UGA",iso2Code:"UG",datasetCodes:["ug-address-ed"],searchTypes:["singleline","validate"]},{country:"Uganda",iso3Code:"UGA",iso2Code:"UG",datasetCodes:["ug-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Ukraine",iso3Code:"UKR",iso2Code:"UA",datasetCodes:["ua-address-ed"],searchTypes:["singleline","validate"]},{country:"Ukraine",iso3Code:"UKR",iso2Code:"UA",datasetCodes:["ua-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"United Arab Emirates",iso3Code:"ARE",iso2Code:"AE",datasetCodes:["ae-address-ed"],searchTypes:["singleline","validate"]},{country:"United Arab Emirates",iso3Code:"ARE",iso2Code:"AE",datasetCodes:["ae-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"United Kingdom",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-additional-multipleresidence","gb-additional-notyetbuilt"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2","combined"]},{country:"United Kingdom (Postal Address File only)",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-address"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2","combined"]},{country:"United Kingdom AddressBase Premium",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-address-addressbase"],searchTypes:["singleline","typedown","validate","lookup"]},{country:"United Kingdom AddressBase Premium with Islands",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-additional-addressbaseislands"],searchTypes:["singleline","typedown","validate","lookup"]},{country:"United Kingdom Business Names",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-additional-business"],searchTypes:["autocomplete","singleline","typedown"]},{country:"United Kingdom Multiple Residence",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-additional-multipleresidence"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2","combined"]},{country:"United Kingdom Not Yet Built",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-additional-notyetbuilt"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2","combined"]},{country:"United Kingdom Utilities (Electricity and Gas)",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-additional-electricity","gb-additional-gas"],searchTypes:["autocomplete","singleline","typedown","lookupv2","combined"]},{country:"United Kingdom Street Level",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-address-streetlevel"],searchTypes:["singleline","typedown"]},{country:"United Kingdom Extended Business",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-additional-businessextended"],searchTypes:["singleline","typedown","validate","lookup"]},{country:"United Kingdom Cymraeg (Welsh Language) Postal Address",iso3Code:"GBR",iso2Code:"GB",datasetCodes:["gb-address-wales"],searchTypes:["singleline","typedown","validate"]},{country:"United States of America",iso3Code:"USA",iso2Code:"US",datasetCodes:["us-address"],searchTypes:["autocomplete","singleline","typedown","validate","lookupv2"]},{country:"Uruguay",iso3Code:"URY",iso2Code:"UY",datasetCodes:["uy-address-ed"],searchTypes:["singleline","validate"]},{country:"Uruguay",iso3Code:"URY",iso2Code:"UY",datasetCodes:["uy-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Uzbekistan",iso3Code:"UZB",iso2Code:"UZ",datasetCodes:["uz-address-ed"],searchTypes:["singleline","validate"]},{country:"Uzbekistan",iso3Code:"UZB",iso2Code:"UZ",datasetCodes:["uz-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Vanuatu",iso3Code:"VUT",iso2Code:"VU",datasetCodes:["vu-address-ed"],searchTypes:["singleline","validate"]},{country:"Vanuatu",iso3Code:"VUT",iso2Code:"VU",datasetCodes:["vu-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Vatican City (Holy See)",iso3Code:"VAT",iso2Code:"VA",datasetCodes:["va-address-ed"],searchTypes:["singleline","validate"]},{country:"Vatican City (Holy See)",iso3Code:"VAT",iso2Code:"VA",datasetCodes:["va-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Venezuela",iso3Code:"VEN",iso2Code:"VE",datasetCodes:["ve-address-ed"],searchTypes:["singleline","validate"]},{country:"Venezuela",iso3Code:"VEN",iso2Code:"VE",datasetCodes:["ve-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Viet Nam",iso3Code:"VNM",iso2Code:"VN",datasetCodes:["vn-address-ed"],searchTypes:["singleline","validate"]},{country:"Viet Nam",iso3Code:"VNM",iso2Code:"VN",datasetCodes:["vn-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Virgin Islands, British",iso3Code:"VGB",iso2Code:"VG",datasetCodes:["vg-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Virgin Islands, U.S.",iso3Code:"VIR",iso2Code:"VI",datasetCodes:["vi-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Wallis and Futuna Islands",iso3Code:"WLF",iso2Code:"WF",datasetCodes:["wf-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Western Sahara",iso3Code:"ESH",iso2Code:"EH",datasetCodes:["eh-address-ed"],searchTypes:["singleline","validate"]},{country:"Western Sahara",iso3Code:"ESH",iso2Code:"EH",datasetCodes:["eh-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Yemen",iso3Code:"YEM",iso2Code:"YE",datasetCodes:["ye-address-ed"],searchTypes:["singleline","validate"]},{country:"Yemen",iso3Code:"YEM",iso2Code:"YE",datasetCodes:["ye-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Zambia",iso3Code:"ZMB",iso2Code:"ZM",datasetCodes:["zm-address-ed"],searchTypes:["singleline","validate"]},{country:"Zambia",iso3Code:"ZMB",iso2Code:"ZM",datasetCodes:["zm-address-eh"],searchTypes:["autocomplete","lookupv2"]},{country:"Zimbabwe",iso3Code:"ZWE",iso2Code:"ZW",datasetCodes:["zw-address-ed"],searchTypes:["singleline","validate"]},{country:"Zimbabwe",iso3Code:"ZWE",iso2Code:"ZW",datasetCodes:["zw-address-eh"],searchTypes:["autocomplete","lookupv2"]}],c=[{countryIso:"GBR",minLength:4,mode:s.POSTAL_CODE,format:/^[A-Za-z]{1,2}[0-9][A-Za-z0-9]? ?[0-9][A-Za-z]{0,2}$/},{countryIso:"GBR",minLength:null,mode:s.WHAT3WORDS,format:/^\/{0,}(?:[^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+|[^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3}[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3}[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3})$/},{countryIso:"GBR",minLength:null,mode:s.MPAN,format:/^\d{13,21}$/},{countryIso:"GBR",minLength:null,mode:s.MPRN,format:/^\d{8,10}$/},{countryIso:"GBR",minLength:null,mode:s.UDPRN,format:/^\d{8}$/}],u={en:{gbr:{locality:"Locality",region:"Region",postal_code:"Postal code"},usa:{locality:"Locality",region:"Region",postal_code:"Postal code"}}},p=function(){this.size=0,this.maxSuggestions=25},h=function(){this.detailsMap=new Map},y="AUS Geocodes",C={latitude:"Latitude",longitude:"Longitude",match_level:"Match Level",sa1:"Sa1",meshblock:"Meshblock",lga_code:"Lga Code",lga_name:"Lga Name",street_pid:"Street Pid",locality_pid:"Locality Pid",geocode_level_code:"Geocode Level Code",geocode_level_description:"Geocode Level Description",geocode_type_code:"Geocode Type Code",geocode_type_description:"Geocode Type Description",highest_level_longitude:"Highest Level Longitude",highest_level_latitude:"Highest Level Latitude",highest_level_geocode_reliability_code:"Highest Level Geocode Reliability Code",highest_level_geocode_reliability_description:"Highest Level Geocode Reliability Description",confidence_level_code:"Confidence Level Code",confidence_level_description:"Confidence Level Description","2016_meshblock_id":"2016 Meshblock Id","2016_meshblock_code":"2016 Meshblock Code","2016_meshblock_match_code":"2016 Meshblock Match Code","2016_meshblock_match_description":"2016 Meshblock Match Description",collector_district_id:"Collector District Id",collector_district_code:"Collector District Code",commonwealth_electoral_boundary_id:"Commonwealth Electoral Boundary Id",commonwealth_electoral_boundary_name:"Commonwealth Electoral Boundary Name",statistical_local_area_id:"Statistical Local Area Id",statistical_local_area_code:"Statistical Local Area Code",statistical_local_area_name:"Statistical Local Area Name",state_electoral_boundary_id:"State Electoral Boundary Id",state_electoral_boundary_name:"State Electoral Boundary Name",state_electoral_effective_start:"State Electoral Effective Start",state_electoral_effective_end:"State Electoral Effective End",state_electoral_new_pid:"State Electoral New Pid",state_electoral_new_name:"State Electoral New Name",state_electoral_new_effective_start:"State Electoral New Effective Start",address_level_longitude:"Address Level Longitude",address_level_latitude:"Address Level Latitude",address_level_geocode_reliability_code:"Address Level Geocode Reliability Code",address_level_geocode_reliability_description:"Address Level Geocode Reliability Description",street_level_longitude:"Street Level Longitude",street_level_latitude:"Street Level Latitude",street_level_boundary_extent:"Street Level Boundary Extent",street_level_geocode_reliability_code:"Street Level Geocode Reliability Code",street_level_geocode_reliability_description:"Street Level Geocode Reliability Description",locality_level_longitude:"Locality Level Longitude",locality_level_latitude:"Locality Level Latitude",locality_level_geocode_reliability_code:"Locality Level Geocode Reliability Code",locality_level_geocode_reliability_description:"Locality Level Geocode Reliability Description",gnaf_legal_parcel_identifier:"Gnaf Legal Parcel Identifier",locality_class_code:"Locality Class Code"},m="AUS Consumer View Household",g={address:"Address",adults_at_address_code:"Adults At Address Code",adults_at_address_description:"Adults At Address Description",affluence_code:"Affluence Code",affluence_description:"Affluence Description",channel_preference:"Channel Preference",channel_preference_description:"Channel Preference Description",children_at_address_code_0_10_years:"Children At Address Code 0 10 Years",children_at_address_code_11_18_years:"Children At Address Code 11 18 Years",children_at_address_description_0_10_years:"Children At Address Description 0 10 Years",children_at_address_description_11_18_years:"Children At Address Description 11 18 Years",credit_demand_code:"Credit Demand Code",credit_demand_description:"Credit Demand Description",gnaf_latitude:"Gnaf Latitude",gnaf_longitude:"Gnaf Longitude",gnaf_pid:"Gnaf Pid",head_of_household_age_code:"Head Of Household Age Code",head_of_household_age_description:"Head Of Household Age Description",hin:"Hin",household_composition_code:"Household Composition Code",household_composition_description:"Household Composition Description",household_income_code:"Household Income Code",household_income_description:"Household Income Description",length_of_residence_code:"Length Of Residence Code",length_of_residence_description:"Length Of Residence Description",lifestage_code:"Lifestage Code",lifestage_description:"Lifestage Description",local_government_area_code:"Local Government Area Code",local_government_area_name:"Local Government Area Name",meshblock:"Meshblock",mosaic_group:"Mosaic Group",mosaic_type:"Mosaic Type",postcode:"Postcode",residential_flag:"Residential Flag",risk_insight_code:"Risk Insight Code",risk_insight_description:"Risk Insight Description",sa1:"Sa1",state:"State",suburb:"Suburb"},v="NZL Geocodes",_={front_of_property_nztm_x_coordinate:"Front of Property NZTM X Coordinate",front_of_property_nztm_y_coordinate:"Front of Property NZTM Y Coordinate",centroid_of_property_nztm_x_coordinate:"Centroid of Property NZTM X Coordinate",centroid_of_property_nztm_y_coordinate:"Centroid of Property NZTM Y Coordinate",front_of_property_latitude:"Front of Property Latitude",front_of_property_longitude:"Front of Property Longitude",centroid_of_property_latitude:"Centroid of Property Latitude",centroid_of_property_longitude:"Centroid of Property Longitude",linz_parcel_id:"Linz Parcel Id",property_purpose_type:"Property Purpose Type",addressable:"Addressable",mesh_block_code:"Mesh Block Code",territorial_authority_code:"Territorial Authority Code",territorial_authority_name:"Territorial Authority Name",regional_council_code:"Regional Council Code",regional_council_name:"Regional Council Name",general_electorate_code:"General Electorate Code",general_electorate_name:"General Electorate Name",maori_electorate_code:"Maori Electorate Code",maori_electorate_name:"Maori Electorate Name",match_level:"Match Level"},T="NZL Consumer View Household",f={adults_at_address:"Adults At Address",children_at_address:"Children At Address",head_of_household_age:"Head Of Household Age",head_of_household_lifestage:"Head Of Household Lifestage",household_composition:"Household Composition",mosaic_group:"Mosaic Group",mosaic_segment:"Mosaic Segment",mosaic_type_group:"Mosaic Type Group"},k="USA Geocodes",b={latitude:"Latitude",longitude:"Longitude",match_level:"Match Level",census_tract:"Census Tract",census_block:"Census Block",core_based_statistical_area:"Core Based Statistical Area",congressional_district_code:"Congressional District Code",county_code:"Country Code"},w="GBR Location Essential",A={latitude:"Latitude",longitude:"Longitude",match_level:"Match Level",udprn:"UDPRN",uprn:"UPRN",x_coordinate:"X Coordinate",y_coordinate:"Y Coordinate"},S={latitude:"Latitude",longitude:"Longitude",name:"Name",description:"Description"},M="Global Geocodes",L={latitude:"Latitude",longitude:"Longitude",match_level:"Match Level"},E={mosaic_group:[{id:"A",title:"First Class Life",description:"Wealthiest group in Australia, typically older middle-aged families with significant assets and income"},{id:"B",title:"Comfortable Foundations",description:"Gen X families with school-aged children, working in white-collar professions and living in suburban areas"},{id:"C",title:"Striving for Status",description:"Young, successful, career-driven professionals living in central city areas with high income and no children"},{id:"D",title:"Secure Tranquillity",description:"Affluent retirees living in higher valued properties in desirable areas"},{id:"E",title:"Family Fringes",description:"Middle-aged traditional families living on large outer-suburban plots, with comfortable incomes and long commutes"},{id:"F",title:"Establishing Roots",description:"Millennial first home buyers, living 10km+ from the city centre with above average income"},{id:"G",title:"Growing Independence",description:"Educated millennials at the start of their careers, renting apartments close to city centres"},{id:"H",title:"Middle Blue-collars",description:"Younger blue-collar workers renting far from city centres, with below average income"},{id:"I",title:"Traditional Pursuits",description:"Average income traditional families & single parents with school-aged children living in outer suburban and regional locations"},{id:"J",title:"True Grit",description:"Blue-collar households in gainful employment, residing in locations across outer suburban, regional and mining towns"},{id:"K",title:"Mature Freedom",description:"Gen X couples without children, renting apartments and terraces in high growth suburbs"},{id:"L",title:"Hardship & Perseverance",description:"Unemployed and blue-collar workers living in units and flats on low incomes"},{id:"M",title:"Graceful Ageing",description:"Older retirees with below average income, living in owned properties or retirement villages"},{id:"N",title:"Rural Commitment",description:"Rural people working in agriculture, living on large plots of land far from main roads and main towns"}],mosaic_type:[{id:"A01",title:"Top of the Ladder",description:"Wealthiest families, married couples often with adult children, owning very expensive properties in exclusive inner-urban areas"},{id:"A02",title:"Luxury Living",description:"Baby boomer families, often with adult children, owning expensive properties in inner-urban & coastal areas"},{id:"A03",title:"Central Prosperity",description:"Middle-older aged empty nester couples renting very expensive properties in inner-urban areas, with high income"},{id:"A04",title:"Suburban Esteem",description:"Traditional baby boomer couples with adult children, owning expensive properties in inner-urban & suburban areas of Sydney & Melbourne"},{id:"B05",title:"Successful Spending",description:"Young, married couples with children and high income, living in outer-suburban/metro-fringe areas"},{id:"B06",title:"Careers & Kids",description:"Gen X families with children, living in expensive properties in suburban areas, with high income"},{id:"B07",title:"Fruitful Families",description:"Gen X families with many children, living in metro-fringe areas, with high income"},{id:"C08",title:"Rooftops & Careers",description:"Well-educated, high-powered business people with very high income and no children, living in expensive properties in central Sydney"},{id:"C09",title:"Elite Alternatives",description:"Well-educated professionals, living in trendy inner-urban areas, with high income"},{id:"C10",title:"Power Couples",description:"Young diverse couples, well-educated, transient, city centre renters with high income and no children"},{id:"D11",title:"Scenic Connection",description:"Older couples in semi-retirement, living in suburban areas and nearby towns for many years, with high income"},{id:"D12",title:"Journeyed Equity",description:"Elderly couples from multicultural backgrounds living in expensive properties in suburban areas of Sydney & Melbourne"},{id:"D13",title:"Coastal Comfort",description:"Retired, traditional couples living in coastal and scenic areas, with average pensionable income levels"},{id:"E14",title:"Spacious Traditions",description:"Middle-aged, traditional families with older children, owning large and expensive properties in outer-suburban areas with high income"},{id:"E15",title:"Opulent Designs",description:"Middle-aged families owning huge houses in outer-suburban areas, with high income"},{id:"E16",title:"Hardware & Acreage",description:"Working in trades, middle-aged families owning acreages of land with large properties just outside the metro fringe"},{id:"F17",title:"Determined Suburbans",description:"Professional couples and singles with high income, owning their first home in high growth inner suburbs"},{id:"F18",title:"Developing Domestics",description:"Young first-home-owner families with very young children, recently moved into new housing estates, with above average income"},{id:"F19",title:"Striving Scholars",description:"Young, highly educated singles and couples, with above average income, living in high growth suburbs"},{id:"G20",title:"Youthful Ambition",description:"Young singles and couples, some students, with no children, renting flats in inner-urban areas, with average income"},{id:"G21",title:"Emerging Metros",description:"Young, well-educated and culturally diverse, renting flats in suburban areas of Sydney, with above average income and no children"},{id:"G22",title:"Spirit Questers",description:"Millennial singles renting in coastal tourist areas, with below average income"},{id:"G23",title:"Global Studies",description:"Young student renters near university campuses, culturally diverse with very low or no income but high spend"},{id:"H24",title:"Backyards & Mates",description:"Millennial blue-collar couples and singles, living in outer-suburban areas and surrounding towns with average income"},{id:"H25",title:"Prams & Trades",description:"Younger blue-collar families with many children, living in new outer-suburban housing estates, with low to average income"},{id:"H26",title:"Earnest Internationals",description:"Younger, diverse blue-collar commuters renting apartments in Sydney outer-suburban areas, with low income"},{id:"H27",title:"Township Solos",description:"Younger blue-collar singles in regional towns, with low income but have financial stability"},{id:"I28",title:"Schools & Bills",description:"Millennial families with young children, sometimes single parents, commuting from outer-suburban areas with average incomes"},{id:"I29",title:"Middle of the Road",description:"Older traditional families with older children, commuting from the metro-fringe with average to high incomes"},{id:"I30",title:"Regional Essentials",description:"Couples and single parents with children living in regional areas with low to average incomes"},{id:"J31",title:"Minerals & Airports",description:"Mixture of singles and couples in mining towns, sometimes with children, earning high incomes"},{id:"J32",title:"Selfless & Hardworking",description:"Blue-collar families from multicultural backgrounds, living in outer-suburban areas, with average to high income"},{id:"J33",title:"Life in the Slow Lane",description:"Middle-aged, blue-collar couples living in outer-suburban/metro-fringe areas, with average income"},{id:"J34",title:"Country Town Courage",description:"Low education, monocultural, manual workers with low income, living in low value properties in rural towns"},{id:"K35",title:"Mature Modernites",description:"Middle-aged couples without children, renting in inner suburban apartments and terraces"},{id:"K36",title:"New-found Freedom",description:"Middle-aged, empty nester couples living in outer-suburban/metro-fringe areas, with above average income"},{id:"K37",title:"Realistic Horizons",description:"Gen X couples and sharers living in outer-suburban and regional areas, with low income and small properties"},{id:"L38",title:"Reset Regionals",description:"Blue-collar families, often single parents, living in rural towns with low income and dependent children"},{id:"L39",title:"New-found Life",description:"Multicultural families, sometimes single parents, living in outer-suburban areas with low income"},{id:"L40",title:"Satellite Battlers",description:"Low income singles in regional towns, sometimes living in social housing"},{id:"L41",title:"Downtown Blues",description:"Older single and diverse, city centre renters with very low income, often living in social housing"},{id:"L42",title:"Township Assistance",description:"Younger families, often single parents, with low incomes in regional towns, often living in social housing"},{id:"M43",title:"Blue-collar Retirees",description:"Multicultural older couples living in outer-suburban areas for a long time, with low income but high property value"},{id:"M44",title:"Staying Put",description:"Older, retired couples, sometimes with adult children or carers, who are long term resident in outer-suburban areas"},{id:"M45",title:"Lonesome Elders",description:"Older singles, living in outer-suburban areas and satellite towns, with below average income"},{id:"M46",title:"Retirement Village",description:"Elderly, traditional couples and singles living in retirement villages in cities and regional towns"},{id:"M47",title:"Rural Retirement",description:"Elderly couples, sometimes with adult children or carers, who are long term residents in rural towns, with low pension income"},{id:"N48",title:"Farming Reliance",description:"Rural farmers and farm owners with below average income, living 10-40km away from the nearest town"},{id:"N49",title:"Outback Comfort",description:"Very rural farmers and farm owners with below average income, living 40km+ from the nearest town"},{id:"N50",title:"Soil & Toil",description:"Single farm workers in very small rural towns. with low income and low value properties"},{id:"N51",title:"Rustic Isolation",description:"Low education, traditional, singles in far inland remote towns, with low income and low value properties"}]},R={adults_at_address:[{id:"1",title:"One adult",description:"The residential property is likely to contain one adult over the age of 18 years residing within the dwelling"},{id:"2",title:"Two adults",description:"The residential property is likely to contain two adults over the age of 18 years residing within the dwelling"},{id:"3",title:"Three adults",description:"The residential property is likely to contain three adults over the age of 18 years residing within the dwelling"},{id:"4",title:"Four adults",description:"The residential property is likely to contain four adults over the age of 18 years residing within the dwelling"},{id:"5",title:"Five adults",description:"The residential property is likely to contain five adults over the age of 18 years residing within the dwelling"},{id:"6",title:"Six adults",description:"The residential property is likely to contain six adults over the age of 18 years residing within the dwelling"},{id:"7",title:"Seven adults",description:"The residential property is likely to contain seven adults over the age of 18 years residing within the dwelling"},{id:"8",title:"Eight adults",description:"The residential property is likely to contain eight adults over the age of 18 years residing within the dwelling"}],children_at_address:[{id:"1",title:"Extremely low likelihood",description:"Extremely low likelihood of the presence of children in the household"},{id:"2",title:"Very low likelihood",description:"Very low likelihood of the presence of children in the household"},{id:"3",title:"Low likelihood",description:"Low likelihood of the presence of children in the household"},{id:"4",title:"Below average likelihood",description:"Below average likelihood of the presence of children in the household"},{id:"5",title:"Average likelihood",description:"Average likelihood of the presence of children in the household"},{id:"6",title:"Above average likelihood",description:"Above average likelihood of the presence of children in the household"},{id:"7",title:"Moderately high likelihood",description:"Moderately high likelihood of the presence of children in the household"},{id:"8",title:"High likelihood",description:"High likelihood of the presence of children in the household"},{id:"9",title:"Very high likelihood",description:"Very high likelihood of the presence of children in the household"},{id:"10",title:"Extremely high likelihood",description:"Extremely high likelihood of the presence of children in the household"}],head_of_household_age:[{id:"1",title:"Under 20",description:"The age of the consumer (combination of both actual and estimated) is under 20 years"},{id:"2",title:"20 to 24 years",description:"The age of the consumer (combination of both actual and estimated) is between 20 to 24 years"},{id:"3",title:"25 to 29 years",description:"The age of the consumer (combination of both actual and estimated) is between 25 to 29 years"},{id:"4",title:"30 to 34 years",description:"The age of the consumer (combination of both actual and estimated) is between 30 to 34 years"},{id:"5",title:"35 to 39 years",description:"The age of the consumer (combination of both actual and estimated) is between 35 to 39 years"},{id:"6",title:"40 to 44 years",description:"The age of the consumer (combination of both actual and estimated) is between 40 to 44 years"},{id:"7",title:"45 to 49 years",description:"The age of the consumer (combination of both actual and estimated) is between 45 to 49 years"},{id:"8",title:"50 to 54 years",description:"The age of the consumer (combination of both actual and estimated) is between 50 to 54 years"},{id:"9",title:"55 to 59 years",description:"The age of the consumer (combination of both actual and estimated) is between 55 to 59 years"},{id:"10",title:"60 to 64 years",description:"The age of the consumer (combination of both actual and estimated) is between 60 to 64 years"},{id:"11",title:"65 to 69 years",description:"The age of the consumer (combination of both actual and estimated) is between 65 to 69 years"},{id:"12",title:"70 to 74 years",description:"The age of the consumer (combination of both actual and estimated) is between 70 to 74 years"},{id:"13",title:"75 to 79 years",description:"The age of the consumer (combination of both actual and estimated) is between 75 to 79 years"},{id:"14",title:"80 to 84 years",description:"The age of the consumer (combination of both actual and estimated) is between 80 to 84 years"},{id:"15",title:">= 85 year",description:"The age of the consumer (combination of both actual and estimated) is greater than or equal to 85 years"}],head_of_household_lifestage:[{id:"1",title:"Young families",description:"Families, Extended Families and Single Parents under 35"},{id:"2",title:"Independent Youth",description:"Couples, Singles and Homesharers under 35"},{id:"3",title:"Maturing Couples and Families",description:"Families, Couples, Extended Families and Single Parents aged 35-44"},{id:"4",title:"Maturing Independence",description:"Singles and Homesharers aged 35-54"},{id:"5",title:"Established Couples and Families",description:"Families, Couples, Extended Families and Single Parents aged 45-54"},{id:"6",title:"Older Couples and Families",description:"Families, Couples, Extended Families and Single Parents aged 55-64"},{id:"7",title:"Older Independence",description:"Singles and Homesharers aged 55-64"},{id:"8",title:"Elderly Families",description:"Families, Extended Families and Single Parents 65 and over"},{id:"9",title:"Elderly Couples",description:"Couples 65 and over"},{id:"10",title:"Elderly Singles",description:"Singles and Homesharers 65 and over"}],household_composition:[{id:"1",title:"Families",description:"The residential property is likely to contain a family unit which is made up of two adults with children"},{id:"2",title:"Extended Families",description:"The residential property is likely to contain an extended family unit which is made up of three or more adults with the same surname"},{id:"3",title:"Couples",description:"The residential property is likely to contain people living as a couple which is made up of two adults and no children"},{id:"4",title:"Single Parent",description:"The residential property is likely to contain an single parent family unit which is made up of one adult with children"},{id:"5",title:"Single",description:"The residential property is likely to contain a single adult only"},{id:"6",title:"Homeshares",description:"The residential property is likely to contain a home share environment which is made up of three or more adults with different surnames"}],mosaic_group:[{id:"A",title:"Corporate Ladder Kings",description:"Educated professionals living in large houses in desirable areas, looking for balance to their busy lives and planning for the future"},{id:"B",title:"Reaping The Rewards",description:"Established conservative older couples living comfortable lives in high quality houses, appreciating traditional country pursuits"},{id:"C",title:"Tractors And Trees",description:"Hard working rural farming families living in large comfortable homes, who are engaged in the local community"},{id:"D",title:"Smartphone Savvies",description:"Young technology savvy home sharers or families living comfortably in urban apartments with strong career goals and a positive outlook"},{id:"E",title:"Watching The Pennies",description:"Older families and couples with conservative views, who are careful with their money and have an easy going attitude to life"},{id:"F",title:"Generation Next",description:"Young singles who are studying or just starting out in their careers, living in urban apartments, and love technology and new gadgets"},{id:"G",title:"Crochet Communities",description:"Elderly singles living in rented apartments, living off their investments, who watch TV and listen to the radio to stay in touch"},{id:"H",title:"Bargains, Benefits And Babies",description:"Young families focused on their young kids who are finding it hard to balance work and leisure, feeling burdened by their finances"},{id:"I",title:"Extended Cultural Living",description:"Mixed family Maori or Pacific Islander households with a strong family focus, financially stressed and making do"}],mosaic_segment:[{id:"01_1",title:"More elderly, more employers and more single person households"},{id:"01_2",title:"More children, higher affluent and more 7+ person households"},{id:"02_1",title:"Much more elderly, more employers and more single person households"},{id:"02_2",title:"More overseas born, more 7+ person households and higher property ownership"},{id:"02_3",title:"Much more children, higher affluent and higher property ownership"},{id:"03_1",title:"Shorter time at address, higher affluent, larger properties"},{id:"03_2",title:"More elderly, longer time at address and more urban"},{id:"03_3",title:"Much longer time at address, more highly educated and more single person households"},{id:"04_1",title:"Higher affluent, higher household income, larger properties"},{id:"04_2",title:"Longer time at address, more single person households and more urban"},{id:"04_3",title:"Less educated, higher property ownership and more rural"},{id:"05_1",title:"More highly educated, higher affluent and larger properties"},{id:"05_2",title:"More children, more employees and more urban"},{id:"05_3",title:"More children, less educated, higher property ownership"},{id:"06_1",title:"More employers, smaller properties and more rural"},{id:"06_2",title:"More elderly, more 3+ children households, less educated"},{id:"06_3",title:"More highly educated, more overseas born and more urban"},{id:"06_4",title:"Higher affluence, higher household income, larger properties"},{id:"07_1",title:"Much more elderly, much more 3+ children households, higher affluence"},{id:"07_2",title:"More elderly, more employers, larger properties"},{id:"07_3",title:"More children, more longer time at address, more 7+ person households"},{id:"08_1",title:"Less educated, smaller properties, more rural"},{id:"08_2",title:"More elderly, more New Zealand born, higher property ownership"},{id:"08_3",title:"Much more overseas born, higher household income, more urban"},{id:"09_1",title:"Much more children, shorter time at address, much lower property ownership"},{id:"09_2",title:"Much longer time at address, much less educated, more single person households"},{id:"09_3",title:"More elderly, higher affluent, much higher property ownership"},{id:"10_1",title:"Much more children, more employees, much higher property ownership"},{id:"10_2",title:"Much more elderly, much more single person households, much more urban"},{id:"10_3",title:"Much longer time at address, much more employers, more rural"},{id:"10_4",title:"Shorter time at address, higher affluent, more 7+ person households"},{id:"11_1",title:"More no children households, more longer time at address, higher property ownership"},{id:"11_2",title:"Much more no children households, much lower property ownership, much smaller properties"},{id:"11_3",title:"More 3+ children households, less educated, larger properties"},{id:"12_1",title:"More longer time at address, more overseas born, more urban"},{id:"12_2",title:"Much more no children households, more highly educated, lower property ownership"},{id:"12_3",title:"More elderly, more longer time at address, less educated"},{id:"12_4",title:"Much more children, shorter time at address, more rural"},{id:"13_1",title:"More highly educated, higher affluence, higher household income"},{id:"13_2",title:"Much longer time at address, much less educated, much more single person households"},{id:"13_3",title:"Much more deprived, much more 7+ person households, much lower property ownership"},{id:"14_1",title:"More single person households, lower property ownership, smaller properties"},{id:"14_2",title:"More New Zealand born, more single person households, smaller properties"},{id:"14_3",title:"Higher household income, much more 7+ person households, larger properties"},{id:"15_1",title:"More children, more New Zealand born, more single person households"},{id:"15_2",title:"Much more 7+ person households, much lower property ownership, smaller properties"},{id:"15_3",title:"More highly educated, higher household income, larger properties"},{id:"16_1",title:"Much more overseas born, much more 7+ person households, much lower property ownership"},{id:"16_2",title:"More children, less educated, much more New Zealand born"},{id:"16_3",title:"More highly educated, higher affluence, higher household income"},{id:"16_4",title:"Much less educated, lower household income, much more single person households"},{id:"17_1",title:"More no children households, more longer time at address, smaller properties"},{id:"17_2",title:"More elderly, more employers, larger properties"},{id:"17_3",title:"More elderly, more deprived, more urban"},{id:"18_1",title:"More no children households, more 7+ person households, more urban"},{id:"18_2",title:"More highly educated, higher affluent, more single person households"},{id:"18_3",title:"More deprived, more single person households, larger properties"},{id:"18_4",title:"More children, more 7+ person households, lower property ownership"},{id:"18_5",title:"More elderly, lower household income, smaller properties"},{id:"19_1",title:"More children, higher household income, higher property ownership"},{id:"19_2",title:"Much less educated, much more deprived, lower household income"},{id:"19_3",title:"More no children households, more highly educated, more single person households"},{id:"19_4",title:"More elderly, higher affluent, more 7+ person households"},{id:"20_1",title:"More children, less educated, larger properties"},{id:"20_2",title:"More highly educated, much smaller properties, much more urban"},{id:"21_1",title:"More New Zealand born, much more deprived, much more single person households"},{id:"21_2",title:"Much more overseas born, much more 7+ person households, much higher property ownership"},{id:"21_3",title:"Much more no children households, lower property ownership, much smaller properties"},{id:"22_1",title:"More longer time at address, much more 7+ person households, larger properties"},{id:"22_2",title:"Much more overseas born, much more deprived, much smaller properties"},{id:"23_1",title:"More highly educated, much more employers, much smaller properties"},{id:"23_2",title:"More children, less educated, higher property ownership"},{id:"23_3",title:"More highly educated, more overseas born, higher household income"},{id:"23_4",title:"Much longer time at address, much less educated, more rural"},{id:"24_1",title:"More children, much more deprived, larger properties"},{id:"24_2",title:"Much more elderly, much more single person households, much smaller properties"},{id:"25_1",title:"More no children households, lower property ownership, much more urban"},{id:"25_2",title:"Much longer time at address, much more deprived, more rural"},{id:"25_3",title:"Much more elderly, more 3+ children households, more urban"},{id:"26_1",title:"Much more children, more overseas born, more urban"},{id:"26_2",title:"Much more elderly, much longer time at address, more rural"},{id:"26_3",title:"More children, higher household income, more 7+ person households"},{id:"26_4",title:"Much more elderly, more single person households, more rural"},{id:"27_1",title:"More elderly, larger properties, much more urban"},{id:"27_2",title:"Much more children, more highly educated, higher affluence"},{id:"27_3",title:"Much more elderly, much more single person households, smaller properties"},{id:"27_4",title:"More longer time at address, less educated, higher property ownership"},{id:"28_1",title:"More children, more deprived, more 7+ person households"},{id:"28_2",title:"More children, more 7+ person households, more urban"},{id:"28_3",title:"More 7+ person households, larger properties, more rural"},{id:"28_4",title:"Much more elderly, much more single person households, much smaller properties"},{id:"29_1",title:"More employers, more single person households, smaller properties"},{id:"29_2",title:"Much more deprived, more employers, much more 7+ person households"},{id:"29_3",title:"More children, shorter time at address, lower property ownership"},{id:"29_4",title:"No children households, more longer time at address, less educated, higher property ownership, urban"},{id:"30_1",title:"Much more deprived, much more single person households, much smaller properties"},{id:"30_2",title:"More overseas born, higher household income, much more 7+ person households"},{id:"30_3",title:"Much more children, more longer time at address, more 7+ person households"},{id:"31_1",title:"More New Zealand born, more single person households, higher property ownership"},{id:"31_2",title:"Much less educated, much more deprived, much more 7+ person households"},{id:"31_3",title:"More highly educated, more single person households, smaller properties"},{id:"31_4",title:"More children, much more 7+ person households, larger properties"},{id:"32_1",title:"Much more overseas born, much more deprived, much smaller properties"},{id:"32_2",title:"More longer time at address, much more New Zealand born, much higher property ownership"},{id:"33_1",title:"More employers, smaller properties, more rural"},{id:"33_2",title:"Much more deprived, lower property ownership, more urban"},{id:"33_3",title:"More employees, higher property ownership, more urban"},{id:"34_1",title:"More longer time at address, more New Zealand born, much higher property ownership"},{id:"34_2",title:"More single person households, much higher property ownership, more rural"},{id:"34_3",title:"Much more overseas born, lower property ownership, much more 7+ person households"}],mosaic_type_group:[{id:"A01",title:"Power Professionals",description:"Highly prosperous households comprising of finance savvy professionals and business owners, living in grand houses in desirable areas"},{id:"A02",title:"Wine And Waves",description:"Older, well-educated families on the verge of retirement enjoying the rewards of successful careers, using the internet to keep updated"},{id:"A03",title:"Double Dollar Suits ",description:"Well-educated double income professional couples with young families, using technology to juggle their busy lifestyles"},{id:"A04",title:"Gold Plated Ride-Ons",description:"Wealthy families with large modern properties on the rural outskirts, enjoying the outdoors and have practical technology needs"},{id:"B05",title:"Tea And Biscuits",description:"Financially secure, older couples who have paid off their homes close to the city, now enjoying more time for their hobbies"},{id:"B06",title:"Outdoor Wanderers",description:"Established couples or families living in larger rural properties who embrace the outdoor life and enjoy traditional country pursuits"},{id:"B07",title:"Backwater Bowls",description:"Traditional New Zealander wealthy retired couples, enjoying a comfortable settled life in regional towns, leading healthy lifestyles"},{id:"C08",title:"High Speed Harvesters",description:"Older hard working families with farming backgrounds in rural locations, transferring the running of the farm to the next generation"},{id:"C09",title:"Farming The Wilderness",description:"Practically minded rural farming families with modest lifestyles, financial burdens, and a passion for fast cars and motorbikes"},{id:"C10",title:"Rustic Retirees",description:"Semi-retired older couples living in outer regional and rural locations, with simple tastes, enjoying the local community spirit"},{id:"D11",title:"Working The Network",description:"Financially established and techno savvy, highly educated singles who own their urban apartments and enjoy a fast paced lifestyle"},{id:"D12",title:"Hash Tag Look At Me ",description:"Fashion focused, social and technologically astute younger families, renting modern properties in the major cities"},{id:"D13",title:"Sharing Spaces",description:"Middle-aged home sharers, living in the suburbs who enjoy social networking and trying to find a balance between work and play"},{id:"D14",title:"Touchscreens And Takeaways",description:"Extended families in modern suburban houses, with low disposable income who like to stand out and are influenced by their social sphere"},{id:"D15",title:"Halftime Hopes",description:"Financially comfortable families who require technology to be practical, living in city apartments and optimistic about the future"},{id:"E16",title:"Carefree Suburbia",description:"Older families keeping an eye on their finances but enjoying an easy going life using traditional media to stay informed and up to date"},{id:"E17",title:"Creatures Of Habit",description:"Elderly couples enjoying a stress free life while residing in segregated neighbourhoods, and listening to the radio to stay in touch"},{id:"E18",title:"Mortgages And Microwaves",description:"Hands-on people who enjoy fixing and tinkering with cars and an active outdoor lifestyle who are balancing large financial commitments"},{id:"E19",title:"Newspapers And Knitting",description:"Senior, mainly divorced singles, retired and financially comfortable with traditional values, preferring bricks and mortar to online"},{id:"F20",title:"Turbo Treadmills",description:"Driven, degree-educated individuals in early stages of their careers, living in shared spaces and using their mobile to stay connected"},{id:"F21",title:"Win The Better Life",description:"Younger singles living in shared rental apartments where job security is important and are searching for something better in life"},{id:"F22",title:"Just Add Water ",description:"Young students in full time study who are connected 24/7, living in campus accommodation, spending their free time with friends"},{id:"G23",title:"Messaging Motorheads",description:"Mix of older and young singles renting in the suburbs, heavy texters and social networkers wanting to be taken seriously"},{id:"G24",title:"Community Greys ",description:"Retired, mainly single, elderly, living off their investments in retirement villages and taking each day as it comes"},{id:"G25",title:"Talkback And Telly",description:"Price sensitive seniors, renting government housing in rural locations, living a low-key lifestyle to keep on top of their finances"},{id:"H26",title:"Fishing For A Bargain",description:"Mature, dual income, family centric households in mortgaged moderate sized homes, on a tight budget and enjoy hunting for bargains"},{id:"H27",title:"Hiring The Lifestyle",description:"Shopping fanatic young families in small homes, with average incomes, who love loyalty cards and coupons, and pay attention to adverts"},{id:"H28",title:"Remote Controlling",description:"Busy mixed families on low incomes in rented government housing, where kids come first and who impulse purchase for the latest gadgets"},{id:"H29",title:"Stately Renters ",description:"Older single parents of Maori descent, living in state housing, who feel quite isolated and have financial challenges"},{id:"H30",title:"Kids And Cars ",description:"Single parents with young kids, living in some of the poorer areas with strong focus on their kids and a preference for online shopping"},{id:"I31",title:"Window Shopping Strugglers",description:"Ethnic minorities living in large multi family households struggling on low incomes, but with an active social life"},{id:"I32",title:"Square Eyes And Empty Pockets",description:"Singles on low incomes or benefits, living in Government housing, with a low key lifestyle and high television and radio consumption"},{id:"I33",title:"Extending The Benefits",description:"Large multi-family Maori households on low income or benefits,who enjoy down to earth pursuits and more traditional media channels"},{id:"I34",title:"Play Dough And Pizza",description:"Mixed family Maori and Pacific Islander households, with a strong focus on their young children but struggling financially"}]},N={locality_class_code:[{id:"A",title:"ALIAS ONLY LOCALITY"},{id:"D",title:"DISTRICT"},{id:"G",title:"GAZETTED LOCALITY"},{id:"H",title:"HUNDRED"},{id:"I",title:"INDIGENOUS LOCATION",description:"Location identified in the Australian government indigenous programs and policy locations (AGIL) dataset available at http://data.gov.au"},{id:"M",title:"MANUALLY VALIDATED"},{id:"T",title:"TOPOGRAPHIC LOCALITY"},{id:"U",title:"UNOFFICIAL SUBURB"},{id:"V",title:"UNOFFICIAL TOPOGRAPHIC FEATURE"}]},I=function(){function o(s){var o=this;this.countryDropdown=[],this.componentsCollectionMap=new Map,this.metadataCollectionMap=new Map,this.geocodes=new h,this.cvHousehold=new h,this.tooltipDescriptionMap=new Map,this.premiumLocationInsightMap=new Map,this.baseUrl="https://api.experianaperture.io/",this.datasetsEndpoint="address/datasets/v1",this.searchEndpoint="address/search/v1",this.lookupV2Endpoint="address/lookup/v2",this.validateEndpoint="address/validate/v1",this.promptsetEndpoint="address/promptsets/v1",this.stepInEndpoint="address/suggestions/stepin/v1",this.refineEndpoint="address/suggestions/refine/v1",this.enrichmentEndpoint="enrichment/v2",this.poweredByLogo={element:null,create:function(e){var s={text:"".concat(this.svg," Powered by Experian"),format:""},o=e.createListItem(s);return o.classList.add("powered-by-experian"),e.list.parentNode.appendChild(o),o},destroy:function(e){this.element&&(e.list.parentNode.removeChild(this.element),this.element=void 0)},svg:'\n Experian logo\n \n \n \n \n \n \n \n \n '},this.result={formattedAddressContainer:null,lastAddressField:null,generateAddressLineRequired:!1,show:function(s){if(o.searchSpinner.hide(),o.picklist.hide(),o.lastSearchTerm="",o.searchType===e.AUTOCOMPLETE||s.result.address&&s.result.confidence!==a.NO_MATCHES){o.inputs.forEach((function(e){return e.value=""})),o.result.calculateIfAddressLineGenerationRequired(),o.result.formattedAddressContainer=o.options.elements.formattedAddressContainer,!o.result.formattedAddressContainer&&o.result.generateAddressLineRequired&&o.result.createFormattedAddressContainer();for(var t=0;t0)for(var s=0;s0){var i=Object.values(e);return t.flatMap((function(e){return e.searchTypes})).map((function(s){return e[s.toUpperCase()]})).sort((function(e,s){return i.indexOf(e)-i.indexOf(s)}))}},o.prototype.readPredefinedFormats=function(){var e=this,s=c.filter((function(s){return s.countryIso===e.currentCountryCode}));if(s)return s},o.prototype.handlePromptsetResult=function(e){this.picklist.hide(),this.events.trigger("post-promptset-check",e)},o.prototype.setInputs=function(s){void 0===s&&(s=this.options.elements.inputs),s?this.registerInputs(s):this.getPromptset(),this.searchType!==e.AUTOCOMPLETE&&this.searchType!==e.COMBINED&&this.options.elements.lookupButton&&(this.lookupFn=this.search.bind(this),this.options.elements.lookupButton.addEventListener("click",this.lookupFn))},o.prototype.registerInputs=function(s){var o=this;this.inputs=Array.from(s),this.inputs.forEach((function(s){s.setAttribute(e.AUTOCOMPLETE,"new-password"),s.setAttribute(e.COMBINED,"new-password"),o.searchType!==e.AUTOCOMPLETE&&o.searchType!==e.COMBINED||(o.keyUpFn=o.search.bind(o),s.addEventListener("keyup",o.keyUpFn),o.checkTabFn=o.checkTab.bind(o),s.addEventListener("keydown",o.checkTabFn),s.setAttribute("placeholder",o.options.placeholderText)),s.addEventListener("keyup",o.handleKeyboardEvent.bind(o))})),this.countryCodeMapping=this.options.countryCodeMapping||{},this.options.applyFocus&&this.inputs[0].focus()},o.prototype.setCountryList=function(){var e=this.baseUrl+this.datasetsEndpoint;if(this.request.send(e,"GET",this.handleDatasetsResponse.bind(this)),this.options.elements.countryList)this.currentCountryCode=this.options.elements.countryList.value,this.currentCountryName=this.options.elements.countryList[this.options.elements.countryList.selectedIndex].label,this.options.elements.countryList.addEventListener("change",this.handleCountryListChange.bind(this));else{if(!this.options.countryCode)throw new Error("Please provide a country code or a country list element");this.currentCountryCode=this.options.countryCode}},o.prototype.handleDatasetsResponse=function(e){var s=this,o=e.result;if(this.countryDropdown=[],o&&o.length>0){for(var t=0,i=o;t=0),i||(this.searchType=e[t[0].toUpperCase()],this.setInputs(),this.events.trigger("post-search-type-change",this.searchType)),this.avMode=s.SEARCH,this.events.trigger("post-country-list-change",t,this.searchType)},o.prototype.generateSearchDataForApiCall=function(){this.currentDataSet||(this.currentDataSet=this.lookupDatasetCodes());var s={country_iso:this.currentCountryCode,components:{unspecified:[this.currentSearchTerm]},datasets:Array.isArray(this.currentDataSet)?this.currentDataSet:[this.currentDataSet],max_suggestions:this.options.maxSuggestions||this.picklist.maxSuggestions};return this.searchType!==e.SINGLELINE&&this.searchType!==e.VALIDATE||(s.attributes={},s.options=[{name:"flatten",Value:"true"},{name:"intensity",Value:"close"},{name:"prompt_set",Value:"default"}],this.currentDataSet.includes("gb-address")||this.currentDataSet.includes("gb-additional-multipleresidence")||this.currentDataSet.includes("gb-additional-notyetbuilt")||this.currentDataSet.includes("gb-address-addressbase")||this.currentDataSet.includes("gb-additional-addressbaseislands")||this.currentDataSet.includes("gb-additional-business")||this.currentDataSet.includes("gb-additional-electricity")||this.currentDataSet.includes("gb-additional-gas")||this.currentDataSet.includes("gb-address-streetlevel")||this.currentDataSet.includes("gb-additional-businessextended")||this.currentDataSet.includes("gb-address-wales")?s.attributes={uk_location_essential:["latitude","longitude","match_level","uprn","x_coordinate","y_coordinate","udprn"]}:this.currentDataSet.includes("us-address")?s.attributes={usa_location_insight:["delivery_point_barcode","dpc","check_digit","congressional_district_code","county_code","record_type","latitude","longitude","match_level","carrier_route","census_tract_number"]}:(this.currentDataSet.includes("au-address")||this.currentDataSet.includes("au-address-gnaf")||this.currentDataSet.includes("au-address-datafusion"))&&(s.attributes.AUS_CV_Household=["address","adults_at_address_code","adults_at_address_description","affluence_code","affluence_description","channel_preference","channel_preference_description","children_at_address_code_0_10_years","children_at_address_code_11_18_years","children_at_address_description_0_10_years","children_at_address_description_11_18_years","credit_demand_code","credit_demand_description","gnaf_latitude","gnaf_longitude","gnaf_pid","head_of_household_age_code","head_of_household_age_description","hin","household_composition_code","household_composition_description","household_income_code","household_income_description","length_of_residence_code","length_of_residence_description","lifestage_code","lifestage_description","local_government_area_code","local_government_area_name","meshblock","mosaic_group","mosaic_segment","mosaic_type","postcode","residential_flag","risk_insight_code","risk_insight_description","sa1","state","suburb","mosaic_factor1_percentile","mosaic_factor1_score","mosaic_factor2_percentile","mosaic_factor2_score","mosaic_factor3_percentile","mosaic_factor3_score","mosaic_factor4_percentile","mosaic_factor4_score","mosaic_factor5_percentile","mosaic_factor5_score"],s.attributes.aus_regional_geocodes=["latitude","longitude","match_level","sa1","meshblock","lga_code","lga_name","street_pid","locality_pid","geocode_level_code","geocode_level_description","geocode_type_code","geocode_type_description","highest_level_longitude","highest_level_latitude","highest_level_elevation","highest_level_planimetric_accuracy","highest_level_boundary_extent","highest_level_geocode_reliability_code","highest_level_geocode_reliability_description","confidence_level_code","confidence_level_description","2021_meshblock_id","2021_meshblock_code","2021_meshblock_match_code","2021_meshblock_match_description","2016_meshblock_id","2016_meshblock_code","2016_meshblock_match_code","2016_meshblock_match_description","address_type_code","primary_address_pid","address_join_type","collector_district_id","collector_district_code","commonwealth_electoral_boundary_id","commonwealth_electoral_boundary_name","statistical_local_area_id","statistical_local_area_code","statistical_local_area_name","state_electoral_boundary_id","state_electoral_boundary_name","state_electoral_effective_start","state_electoral_effective_end","state_electoral_new_pid","state_electoral_new_name","state_electoral_new_effective_start","state_electoral_new_effective_end","address_level_longitude","address_level_latitude","address_level_elevation","address_level_planimetric_accuracy","address_level_boundary_extent","address_level_geocode_reliability_code","address_level_geocode_reliability_description","street_level_longitude","street_level_latitude","street_level_planimetric_accuracy","street_level_boundary_extent","street_level_geocode_reliability_code","street_level_geocode_reliability_description","locality_level_longitude","locality_level_latitude","locality_level_planimetric_accuracy","locality_level_geocode_reliability_code","locality_level_geocode_reliability_description","gnaf_legal_parcel_identifier","locality_class_code"]),s.attributes.premium_location_insight=["geocodes","geocodes_access","geocodes_building_xy","time"],this.searchType===e.SINGLELINE&&s.options.push({name:"search_type",Value:"singleline"}),this.searchType===e.VALIDATE&&(s.layouts=["default"],s.layout_format="default")),this.options.location&&(s.location=this.options.location),JSON.stringify(s)},o.prototype.generateLookupDataForApiCall=function(e,o){this.currentDataSet||(this.currentDataSet=this.lookupDatasetCodes());var t=[],i=[];switch(o){case s.MPAN:this.currentDataSet.includes("gb-additional-electricity")&&t.push("gb-additional-electricity"),i.push("ElectricityUtilityLookup");break;case s.MPRN:this.currentDataSet.includes("gb-additional-gas")&&t.push("gb-additional-gas"),i.push("GasUtilityLookup");break;default:t=Array.isArray(this.currentDataSet)?this.currentDataSet:[this.currentDataSet]}var a={country_iso:this.currentCountryCode,datasets:t,max_suggestions:this.options.maxSuggestionsForLookup||this.picklist.maxSuggestions,key:{type:this.generateLookupType(o),value:e},layouts:i};return JSON.stringify(a)},o.prototype.getWhat3WordsLookupValue=function(e,s){return e.startsWith("///")&&s&&(e=e.slice(3)),e},o.prototype.handleKeyboardEvent=function(e){e.preventDefault();var s=this.getKey(e);if(this.picklist.size){if("ArrowUp"===s||"ArrowDown"===s||"Enter"===s)return void this.picklist.keyup(e)}else if("Enter"===s)return void this.search(e)},o.prototype.search=function(o){var t=this;o.preventDefault(),this.avMode=s.SEARCH;var i=(this.countryCodeMapping[this.currentCountryCode]||this.currentCountryCode).split(";");this.currentCountryCode=i[0],i[1]&&(this.currentDataSet=i[1]),""===this.currentSearchTerm&&(this.hasSearchInputBeenReset=!0);var a=this.isInternationalValidation()?"|":",";if(this.currentSearchTerm=this.inputs.map((function(e){return e.value})).join(a),this.canSearch()){this.request.currentRequest&&this.request.currentRequest.abort(),this.searchType==e.COMBINED&&this.readPredefinedFormats().find((function(e){e.format.test(t.currentSearchTerm.trim())&&(t.avMode=e.mode,t.currentSearchTerm=t.currentSearchTerm.trim())})),this.events.trigger("pre-search",this.currentSearchTerm),this.lastSearchTerm=this.currentSearchTerm,this.searchSpinner.hide(),this.searchSpinner.show();var d=void 0,r=void 0,n=void 0,l=void 0;if(this.searchType===e.LOOKUPV2){var c=this.currentSearchTerm.split(",");this.avMode=s[c[0].toUpperCase()],this.returnAddresses="true"===c[1],this.currentSearchTerm=c[2].trim()}switch(this.avMode){case s.WHAT3WORDS:l=this.generateLookupDataForApiCall(this.getWhat3WordsLookupValue(this.currentSearchTerm,!0),this.avMode),d=this.baseUrl+this.lookupV2Endpoint,r=[],n=this.picklist.showWhat3Words;break;case s.MPAN:case s.MPRN:this.returnAddresses=!0,l=this.generateLookupDataForApiCall(this.currentSearchTerm,this.avMode),d=this.baseUrl+this.lookupV2Endpoint,r=[{key:"Add-FinalAddress",value:!0}],n=this.result.handleUtilitiesLookupResponse;break;case s.UDPRN:case s.POSTAL_CODE:case s.LOCALITY:this.searchType===e.COMBINED&&(this.returnAddresses=!0),l=this.generateLookupDataForApiCall(this.currentSearchTerm,this.avMode),d=this.baseUrl+this.lookupV2Endpoint,r=[{key:"Add-Addresses",value:!0}],n=this.picklist.showLookup;break;default:l=this.generateSearchDataForApiCall(),d=this.baseUrl+(this.searchType===e.VALIDATE?this.validateEndpoint:this.searchEndpoint),r=this.searchType===e.VALIDATE?[{key:"Add-Components",value:!0},{key:"Add-Metadata",value:!0},{key:"Add-Enrichment",value:!0}]:[],n=this.searchType===e.VALIDATE?this.result.handleValidateResponse:this.picklist.show}this.request.send(d,"POST",n,l,r)}else this.lastSearchTerm!==this.currentSearchTerm&&this.picklist.hide()},o.prototype.getKey=function(e){var s=e.key;switch(s){case"Down":case"ArrowDown":return"ArrowDown";case"Up":case"ArrowUp":return"ArrowUp";case"Spacebar":case" ":return" ";case"Escape":case"Esc":return"Escape";default:return s}},o.prototype.canSearch=function(){return this.options.enabled&&""!==this.currentSearchTerm&&this.currentSearchTerm.length>3&&this.lastSearchTerm!==this.currentSearchTerm&&this.currentCountryCode&&!0===this.hasSearchInputBeenReset},o.prototype.createPicklist=function(){var s=this;this.picklist=new p,this.picklist.maxSuggestions=25,this.picklist.tabCount=-1,this.picklist.show=function(o){var t;s.picklist.items=null==o?void 0:o.result.suggestions,s.picklist.handleCommonShowPicklistLogic(),(null===(t=s.picklist.items)||void 0===t?void 0:t.length)>0?(s.picklist.refine.isNeeded(o)&&s.picklist.refine.createInput(o.result.suggestions_prompt,o.result.suggestions_key),s.searchType===e.VALIDATE&&s.picklist.displaySuggestionsHeader(),s.picklist.items.forEach((function(e){var o=s.picklist.createListItem(e);s.picklist.list.appendChild(o),s.picklist.listen(o)})),s.searchType===e.VALIDATE&&s.picklist.displayUseAddressEnteredFooter(),s.picklist.scrollIntoViewIfNeeded()):s.picklist.handleEmptyPicklist(o),s.poweredByLogo.element=s.poweredByLogo.element||s.poweredByLogo.create(s.picklist),s.events.trigger("post-picklist-create",s.picklist.items)},this.picklist.showWhat3Words=function(e){var o;s.picklist.what3wordsItems=null==e?void 0:e.result.suggestions,s.picklist.handleCommonShowPicklistLogic(),(null===(o=s.picklist.what3wordsItems)||void 0===o?void 0:o.length)>0?(s.picklist.what3wordsItems.forEach((function(e){var o=s.picklist.createWhat3WordsListItem(e);s.picklist.list.appendChild(o),s.picklist.listen(o)})),s.picklist.scrollIntoViewIfNeeded()):s.picklist.handleEmptyPicklist(e),s.poweredByLogo.element=s.poweredByLogo.element||s.poweredByLogo.create(s.picklist),s.events.trigger("post-picklist-create",s.picklist.items)},this.picklist.showLookup=function(e){var o=s.returnAddresses?null==e?void 0:e.result.addresses:null==e?void 0:e.result.suggestions;s.picklist.handleCommonShowPicklistLogic(),(null==o?void 0:o.length)>0?(o.forEach((function(e){var o=s.returnAddresses?s.picklist.createLookupListItem(e):s.picklist.createLookupSuggestionListItem(e);s.picklist.list.appendChild(o),s.picklist.listen(o)})),s.picklist.scrollIntoViewIfNeeded()):s.picklist.handleEmptyPicklist(e),s.poweredByLogo.element=s.poweredByLogo.element||s.poweredByLogo.create(s.picklist),s.events.trigger("post-picklist-create",s.picklist.items)},this.picklist.handleCommonShowPicklistLogic=function(){var e;s.picklist.currentItem=null,s.picklist.size=null===(e=s.picklist.items)||void 0===e?void 0:e.length,s.picklist.resetTabCount(),s.searchSpinner.hide(),s.picklist.list=s.picklist.list||s.picklist.createList(),s.picklist.list.innerHTML="",s.picklist.useAddressEntered.destroy(),s.events.trigger("pre-picklist-create",s.picklist.items)},this.picklist.hide=function(){if(s.picklist.currentItem=null,s.picklist.useAddressEntered.destroy(),s.poweredByLogo.destroy(s.picklist),s.inputs){var o=s.searchType===e.SINGLELINE?s.inputs.length-1:0;s.inputs[o].classList.remove("showing-suggestions")}s.picklist.list&&(s.picklist.container.remove(),s.picklist.list=void 0)},this.picklist.handleEmptyPicklist=function(e){var o;s.picklist.useAddressEntered.element=s.picklist.useAddressEntered.element||s.picklist.useAddressEntered.create(null===(o=e.result)||void 0===o?void 0:o.confidence),s.picklist.scrollIntoViewIfNeeded(),"function"==typeof s.picklist.handleEmptyPicklistCallback&&s.picklist.handleEmptyPicklistCallback()},this.picklist.displaySuggestionsHeader=function(){var e=document.querySelector(".picklist-suggestions-header")||document.createElement("div");e.classList.add("picklist-suggestions-header"),e.innerText="Suggestions:",s.picklist.list.parentNode.insertBefore(e,s.picklist.list)},this.picklist.displayUseAddressEnteredFooter=function(){var e=document.querySelector(".picklist-use-entered-container")||document.createElement("div");e.classList.add("picklist-use-entered-container"),s.picklist.list.parentNode.insertBefore(e,s.picklist.list.nextElementSibling);var o=document.querySelector(".picklist-use-entered-header")||document.createElement("div");o.classList.add("picklist-use-entered-header"),o.innerText="Or use address entered:",e.appendChild(o);var t=document.querySelector(".picklist-use-entered-option")||document.createElement("div");t.classList.add("picklist-use-entered-option"),t.innerText=s.currentSearchTerm.replace(/,+/g,", "),t.addEventListener("click",s.picklist.useAddressEntered.click),e.appendChild(t)},this.picklist.scrollIntoViewIfNeeded=function(){var e=s.picklist.container.getBoundingClientRect().top<0,o=s.picklist.container.getBoundingClientRect().bottom>window.innerHeight;(e||o)&&s.picklist.container.scrollIntoView()},this.picklist.useAddressEntered={element:null,create:function(e){var o={text:"".concat(e," ").concat(s.options.useAddressEnteredText)},t=s.picklist.createListItem(o);return t.classList.add("use-address-entered"),t.setAttribute("title","Enter address manually"),s.picklist.list=s.picklist.list||s.picklist.createList(),s.picklist.list.parentNode.insertBefore(t,s.picklist.container.firstChild),t.addEventListener("click",s.picklist.useAddressEntered.click),t},destroy:function(){s.picklist.useAddressEntered.element&&(s.picklist.list.parentNode.removeChild(s.picklist.useAddressEntered.element),s.picklist.useAddressEntered.element=void 0)},click:function(){var e={result:{confidence:"No matches",address:{address_line_1:"",address_line_2:"",address_line_3:"",locality:"",region:"",postal_code:"",country:""}}};if(s.currentSearchTerm){var o=s.currentSearchTerm.split(",");o[0]&&(e.result.address.address_line_1=o[0]),o[1]&&(e.result.address.address_line_2=o[1]),o[2]&&(e.result.address.address_line_3=o[2]);for(var t=3;ti.length-1&&(s.picklist.tabCount=0,o=!0);var a=i[s.picklist.tabCount],d=s.picklist.list.querySelector(".selected");d&&d.classList.remove("selected"),a.classList.add("selected"),s.picklist.currentItem=a;var r=s.picklist.list.offsetTop,n=s.picklist.list.offsetTop+s.picklist.list.offsetHeight,l=s.picklist.list.scrollTop,c=a.offsetTop,u=a.offsetTop+a.offsetHeight,p=a.offsetHeight;o?s.picklist.list.scrollTop=0:t?s.picklist.list.scrollTop=999:u+p>n?s.picklist.list.scrollTop=l+p:c-p-r";o=o.substring(0,s[t][0])+i+o.substring(s[t][1])}return o},this.picklist.listen=function(e){e.addEventListener("click",s.picklist.pick.bind(null,e))},this.picklist.checkEnter=function(e){if("Enter"===e.key||"Tab"===e.key){var o=void 0;1===s.picklist.size?o=s.picklist.list.querySelectorAll("div")[0]:s.picklist.currentItem&&(o=s.picklist.currentItem),o&&s.picklist.pick(o)}},this.picklist.pick=function(o){if(s.events.trigger("post-picklist-selection",o),o.classList.contains(d.WHAT3WORDS.key)){var t=o.getElementsByTagName("div");return s.returnAddresses=!0,void s.lookup(t[0].innerHTML)}e.LOOKUPV2!==s.searchType||s.returnAddresses?o.getAttribute("format")?Array.isArray(s.currentDataSet)&&s.currentDataSet.slice().sort()===["gb-additional-electricity","gb-additional-gas"].slice().sort()?s.format(o.getAttribute("format","utilities")):s.format(o.getAttribute("format")):s.refine(o.getAttribute("refine")):s.formatLookupLocalityWithoutAddresses(o)}},o.prototype.formatLookupLocalityWithoutAddresses=function(e){this.result.updateAddressLine("locality",e.getAttribute("town_name"),"address-line-input"),this.result.updateAddressLine("region",e.getAttribute("region_name"),"address-line-input"),this.result.updateAddressLine("postal_code",e.getAttribute("postal_code_name"),"address-line-input"),this.result.updateAddressLine("country",e.getAttribute("country"),"address-line-input");var s=d.POSTAL_CODE.key===this.lookupType?"postal_code_key":"locality_key";this.result.createSearchAgainLink(),this.events.trigger("post-formatting-lookup",e.getAttribute(s),e)},o.prototype.format=function(e,s){this.events.trigger("pre-formatting-search",e),this.searchSpinner.hide();var o={layouts:s?[s]:["default"],layout_format:"default",attributes:this.getEnrichmentAttributes(e.split("/")[6])};this.request.send(e,"POST",this.result.show,JSON.stringify(o),[{key:"Add-Components",value:!0},{key:"Add-Metadata",value:!0},{key:"Add-Enrichment",value:!0}])},o.prototype.refine=function(e){this.events.trigger("pre-refinement",e),this.searchSpinner.hide(),this.request.send("".concat(this.baseUrl).concat(this.stepInEndpoint,"/").concat(e),"GET",this.picklist.show)},o.prototype.lookup=function(e){this.events.trigger("pre-lookup",e),this.searchSpinner.hide();var o=this.generateLookupDataForApiCall(e,s.WHAT3WORDS),t=this.baseUrl+this.lookupV2Endpoint,i=this.picklist.showLookup;this.request.send(t,"POST",i,o,[{key:"Add-Addresses",value:!0}])},o.prototype.populateResponseToMap=function(e,s,o,t){if(e)for(var i=function(e,i){if(!s.has(e))return"continue";var d=s.get(e);if(o&&o.has(e)){var r=o.get(e),n=Object.values(r).find((function(e){return e.id===i}));n&&a.tooltipDescriptionMap.set(d,n.title)}t.set(d,i)},a=this,d=0,r=e;de.classList.remove("search-type-selected"))),e.currentTarget.classList.add("search-type-selected"),address.setSearchType(e.currentTarget.dataset.panelType)}address.events.on("post-datasets-update",(function(){let e=options.elements.countryList,t=e.getElementsByTagName("option");Array.from(t).filter((e=>"Please select"!==e.innerText)).forEach((e=>e.remove()));let s=address.countryDropdown;for(const t of s){const s=document.createElement("option");s.setAttribute("value",t.iso3Code),s.innerText=t.country,e.append(s)}})),address.events.on("pre-formatting-search",(function(){document.querySelector(".loader").classList.remove("hidden")})),address.events.on("post-formatting-search",(function(e){document.querySelector(".loader").classList.add("hidden"),document.querySelector("#validated-address-info").classList.remove("hidden"),"No matches"===e.result.confidence&&"autocomplete"!==address.searchType||(document.querySelector(".formatted-address").classList.remove("hidden"),document.querySelectorAll(".formatted-address .hidden").forEach((e=>e.classList.remove("hidden"))),document.querySelector(".promptset").classList.add("hidden")),populateMetadata(e)})),address.events.on("post-formatting-lookup",(function(e,t){document.querySelector(".loader").classList.add("hidden"),document.querySelector("#validated-address-info").classList.add("hidden"),document.querySelectorAll(".formatted-address").forEach((e=>e.classList.remove("hidden"))),document.querySelector(".promptset").classList.add("hidden"),address.getLookupEnrichmentData(e),document.querySelector(".metadata").classList.remove("invisible")})),address.events.on("post-reset",(function(){document.querySelector(".formatted-address").classList.add("hidden"),resetMetadata(),document.querySelector(".promptset").classList.remove("hidden"),"lookupv2"===address.searchType&&(document.getElementById("address-input-0").getElementsByTagName("option")[0].selected="true",document.getElementById("address-input-1").getElementsByTagName("option")[0].selected="true")})),address.events.on("request-error-400",(function(){document.querySelector(".loader").classList.add("hidden")})),address.events.on("request-error-401",(function(){document.querySelector("main").classList.add("inactive"),document.querySelector(".token-prompt").classList.remove("hidden")})),address.events.on("post-promptset-check",(function(e){const t=[];let s=document.querySelector(".error-display");s.classList.contains("hidden")||(s.classList.add("hidden"),document.querySelector(".promptset").classList.remove("hidden")),document.querySelector(".address-field-inputs").innerHTML="",e.result.lines.forEach(((e,s)=>{const d=document.createElement("label");let o;d.setAttribute("for",`address-input-${s}`),d.innerText=e.prompt,e.dropdown_options?(o=document.createElement("select"),o.classList.add("address-input"),o.setAttribute("id",`address-input-${s}`),e.dropdown_options.forEach((e=>{const t=document.createElement("option");t.setAttribute("value",e.key),t.innerText=e.display,o.append(t)}))):(o=document.createElement("input"),o.classList.add("address-input"),o.setAttribute("type","text"),o.setAttribute("id",`address-input-${s}`),e.suggested_input_length&&o.setAttribute("size",e.suggested_input_length),e.example&&o.setAttribute("placeholder",e.example)),t.push(o),document.querySelector(".address-field-inputs").append(d,o)})),address.setInputs(t),document.querySelector("button#find-address-button").classList["autocomplete"!==address.searchType?"remove":"add"]("hidden")})),address.events.on("error-display",(function(e){document.querySelector(".promptset").classList.add("hidden"),resetMetadata(),document.querySelectorAll(".formatted-address").forEach((e=>e.classList.add("hidden")));let t=document.querySelector(".error-display");t.classList.remove("hidden"),t.getElementsByTagName("label")[0].innerText=e})),document.querySelectorAll(".search-type-selector").forEach((e=>e.addEventListener("click",togglePanel))); \ No newline at end of file +var options={searchType:"combined",maxSuggestions:10,maxSuggestionsForLookup:1e3,useSpinner:!1,elements:{countryList:document.querySelector("select"),address_line_1:document.querySelector("input[name='address_line_1']"),address_line_2:document.querySelector("input[name='address_line_2']"),address_line_3:document.querySelector("input[name='address_line_2']"),locality:document.querySelector("input[name='locality']"),region:document.querySelector("input[name='region']"),postal_code:document.querySelector("input[name='postal_code']"),country:document.querySelector("input[name='country']"),lookupButton:document.querySelector("button#find-address-button")}};localStorage&&localStorage.getItem("address-validation-token")&&(options.token=localStorage.getItem("address-validation-token"));var addressValidationMap,addressValidationW3wMarker,addressValidationGeoMarker,address=new AddressValidation(options);function addToken(){address.setToken(document.querySelector('[name="token"]').value),document.querySelector("main").classList.remove("inactive"),document.querySelector(".token-prompt").classList.add("hidden"),localStorage&&localStorage.setItem("address-validation-token",document.querySelector('[name="token"]').value)}function togglePanel(e){document.querySelectorAll(".search-type-selector").forEach((e=>e.classList.remove("search-type-selected"))),e.currentTarget.classList.add("search-type-selected"),address.setSearchType(e.currentTarget.dataset.panelType)}address.events.on("post-datasets-update",(function(){let e=options.elements.countryList,t=e.getElementsByTagName("option");Array.from(t).filter((e=>"Please select"!==e.innerText)).forEach((e=>e.remove()));let s=address.countryDropdown;for(const t of s){const s=document.createElement("option");s.setAttribute("value",t.iso3Code),s.innerText=t.country,e.append(s)}})),address.events.on("post-country-list-change",(function(e,t){document.querySelectorAll(".search-type-selector").forEach((e=>e.classList.add("hidden"))),document.querySelectorAll("label[data-panel-type]").forEach((e=>e.classList.add("hidden"))),e.filter((e=>"typedown"!=e)).forEach((e=>document.querySelectorAll("label[data-panel-type~='"+e+"']").forEach((e=>e.classList.remove("hidden"))))),document.querySelectorAll(".search-type-selector").forEach((e=>e.classList.remove("search-type-selected"))),document.querySelector("label.search-type-selector[data-panel-type='"+t+"']").classList.add("search-type-selected"),radiobtn=document.getElementById(t+"-radio"),radiobtn.checked=!0})),address.events.on("pre-formatting-search",(function(){document.querySelector(".loader").classList.remove("hidden")})),address.events.on("post-formatting-search",(function(e){document.querySelector(".loader").classList.add("hidden"),document.querySelector("#validated-address-info").classList.remove("hidden"),"No matches"===e.result.confidence&&"combined"!==address.searchType&&"autocomplete"!==address.searchType||(document.querySelector(".formatted-address").classList.remove("hidden"),document.querySelectorAll(".formatted-address .hidden").forEach((e=>e.classList.remove("hidden"))),document.querySelector(".promptset").classList.add("hidden")),populateMetadata(e)})),address.events.on("post-formatting-lookup",(function(e,t){document.querySelector(".loader").classList.add("hidden"),document.querySelector("#validated-address-info").classList.add("hidden"),document.querySelectorAll(".formatted-address").forEach((e=>e.classList.remove("hidden"))),document.querySelector(".promptset").classList.add("hidden"),address.getLookupEnrichmentData(e),document.querySelector(".metadata").classList.remove("invisible")})),address.events.on("post-reset",(function(){document.querySelector(".formatted-address").classList.add("hidden"),resetMetadata(),document.querySelector(".promptset").classList.remove("hidden"),"lookupv2"===address.searchType&&(document.getElementById("address-input-0").getElementsByTagName("option")[0].selected="true",document.getElementById("address-input-1").getElementsByTagName("option")[0].selected="true")})),address.events.on("request-error-400",(function(){document.querySelector(".loader").classList.add("hidden")})),address.events.on("request-error-401",(function(){document.querySelector("main").classList.add("inactive"),document.querySelector(".token-prompt").classList.remove("hidden")})),address.events.on("post-promptset-check",(function(e){const t=[];let s=document.querySelector(".error-display");s.classList.contains("hidden")||(s.classList.add("hidden"),document.querySelector(".promptset").classList.remove("hidden")),document.querySelector(".address-field-inputs").innerHTML="",e.result.lines.forEach(((e,s)=>{const d=document.createElement("label");let o;d.setAttribute("for",`address-input-${s}`),d.innerText=e.prompt,e.dropdown_options?(o=document.createElement("select"),o.classList.add("address-input"),o.setAttribute("id",`address-input-${s}`),e.dropdown_options.forEach((e=>{const t=document.createElement("option");t.setAttribute("value",e.key),t.innerText=e.display,o.append(t)}))):(o=document.createElement("input"),o.classList.add("address-input"),o.setAttribute("type","text"),o.setAttribute("id",`address-input-${s}`),e.suggested_input_length&&o.setAttribute("size",e.suggested_input_length),e.example&&o.setAttribute("placeholder",e.example)),t.push(o),document.querySelector(".address-field-inputs").append(d,o)})),address.setInputs(t),document.querySelector("button#find-address-button").classList["autocomplete"!==address.searchType&&"combined"!==address.searchType?"remove":"add"]("hidden")})),address.events.on("error-display",(function(e){document.querySelector(".promptset").classList.add("hidden"),resetMetadata(),document.querySelectorAll(".formatted-address").forEach((e=>e.classList.add("hidden")));let t=document.querySelector(".error-display");t.classList.remove("hidden"),t.getElementsByTagName("label")[0].innerText=e})),document.querySelectorAll(".search-type-selector").forEach((e=>e.addEventListener("click",togglePanel))); \ No newline at end of file diff --git a/dist/lib/address-search.d.ts b/dist/lib/address-search.d.ts index 927f8de..ca4c3ab 100644 --- a/dist/lib/address-search.d.ts +++ b/dist/lib/address-search.d.ts @@ -11,8 +11,8 @@ export default class AddressValidation { country: string; iso3Code: string; iso2Code: string; - datasetCode: string; - searchType: string; + datasetCodes: string[]; + searchTypes: string[]; }[]; componentsCollectionMap: Map; metadataCollectionMap: Map; @@ -55,7 +55,9 @@ export default class AddressValidation { private get token(); private mergeDefaultOptions; private getPromptset; - private lookupDatasetCode; + private lookupDatasetCodes; + private lookupSearchTypes; + private readPredefinedFormats; private handlePromptsetResult; setInputs(inputs?: HTMLInputElement[]): void; private registerInputs; @@ -82,4 +84,5 @@ export default class AddressValidation { private toggleSearchInputs; private globalReset; private isInternationalValidation; + private generateLookupType; } diff --git a/dist/lib/class-types.d.ts b/dist/lib/class-types.d.ts index 555edd8..e20f4da 100644 --- a/dist/lib/class-types.d.ts +++ b/dist/lib/class-types.d.ts @@ -1,3 +1,4 @@ +import { AddressValidationMode } from "./search-options"; export declare class Picklist { items: PicklistItem[]; what3wordsItems: What3WordsPickList[]; @@ -37,6 +38,7 @@ export declare class AddressValidationResult { lastAddressField: any; generateAddressLineRequired: boolean; show: (data: any) => void; + showLookupV2: (data: LookupV2Response) => void; hide: () => void; createAddressLine: CreateAddressLine; createFormattedAddressContainer: () => void; @@ -48,6 +50,7 @@ export declare class AddressValidationResult { createSearchAgainLink: () => void; renderInputList: (inputArray: any) => void; handleValidateResponse: (response: SearchResponse) => void; + handleUtilitiesLookupResponse: (response: LookupV2Response) => void; handleEnrichmentResponse: (response: EnrichmentResponse) => void; } declare class CreateAddressLine { @@ -84,8 +87,17 @@ export interface LookupV2Response { confidence: string; suggestions: LookupSuggestion[]; addresses: LookupAddress[]; + addresses_formatted: CustomLookupAddressFormatted[]; }; } +export interface CustomLookupAddressFormatted { + layout_name: string; + address: CustomLookupAddress; +} +export interface CustomLookupAddress { + electricity_meters?: Object; + gas_meters?: Object; +} export interface LookupSuggestion { locality: LocalityComponents; postal_code: PostalCode; @@ -176,6 +188,7 @@ export interface DatasetsCountryResult { country_iso_3?: string; country_name?: string; datasets?: Dataset[]; + valid_combinations?: string[][]; } export interface Dataset { id?: string; @@ -206,4 +219,10 @@ export declare class PoweredByLogo { destroy: (picklist: any) => void; svg: string; } +export declare class PredefinedFormats { + countryIso: string; + format: RegExp; + minLength: number; + mode: AddressValidationMode; +} export {}; diff --git a/dist/lib/datasets-codes.d.ts b/dist/lib/datasets-codes.d.ts index 8ddd6c1..ef9c989 100644 --- a/dist/lib/datasets-codes.d.ts +++ b/dist/lib/datasets-codes.d.ts @@ -2,6 +2,6 @@ export declare const datasetCodes: { country: string; iso3Code: string; iso2Code: string; - datasetCode: string; - searchType: string; + datasetCodes: string[]; + searchTypes: string[]; }[]; diff --git a/dist/lib/predefined-formats.d.ts b/dist/lib/predefined-formats.d.ts new file mode 100644 index 0000000..337bd75 --- /dev/null +++ b/dist/lib/predefined-formats.d.ts @@ -0,0 +1,7 @@ +import { AddressValidationMode } from "./search-options"; +export declare const predefinedFormats: { + countryIso: string; + minLength: number; + mode: AddressValidationMode; + format: RegExp; +}[]; diff --git a/dist/lib/search-options.d.ts b/dist/lib/search-options.d.ts index 8997ba5..da86663 100644 --- a/dist/lib/search-options.d.ts +++ b/dist/lib/search-options.d.ts @@ -4,6 +4,7 @@ export interface AddressSearchOptions { avMode: AddressValidationMode; searchType: AddressValidationSearchType; maxSuggestions: number; + maxSuggestionsForLookup: number; language: string; location: string; useSpinner: boolean; @@ -41,33 +42,52 @@ export interface AddressSearchOptions { }; } export declare enum AddressValidationSearchType { + COMBINED = "combined", AUTOCOMPLETE = "autocomplete", - SINGLELINE = "singleline", VALIDATE = "validate", + SINGLELINE = "singleline", + TYPEDOWN = "typedown", LOOKUPV2 = "lookupv2" } export declare enum AddressValidationMode { SEARCH = 1, WHAT3WORDS = 2, UDPRN = 3, - LOOKUPV2 = 4 + LOCALITY = 4, + POSTAL_CODE = 5, + MPAN = 6, + MPRN = 7 } export declare const AddressValidationLookupKeywords: { - LOCALITY: { + WHAT3WORDS: { key: string; display: string; + dataset: string[][]; }; - POSTAL_CODE: { + UDPRN: { key: string; display: string; + dataset: string[][]; }; - UDPRN: { + MPAN: { key: string; display: string; + dataset: string[][]; }; - WHAT3WORDS: { + MPRN: { + key: string; + display: string; + dataset: string[][]; + }; + POSTAL_CODE: { + key: string; + display: string; + dataset: any[]; + }; + LOCALITY: { key: string; display: string; + dataset: any[]; }; }; export declare const AddAddressesOptions: { diff --git a/index.html b/index.html index fd36a94..f91ceb1 100644 --- a/index.html +++ b/index.html @@ -24,7 +24,7 @@ Experian Address Validation - Welcome to our Experian Address Validation demo. Here you can try some of our available search types. + Welcome to our Experian Address Validation demo. Here you can try our available search types. Please enter a valid token to get started: @@ -41,34 +41,44 @@ Experian Address Validation Please select - Choose search type + Choose search type - + + + Combination of available search types resulting in best UX for your end user + + Designed to provide accurate suggestions in real-time. Combining Autocomplete with Lookup based on the user's input. Start by typing an address or lookup addresses by postal code, what3words, UDPRN, or utility meter numbers. + Available lookup types depend on the selected country dataset. + + + Or try our search types in isolation + Predict the address as I type - - Autocomplete search is designed to provide accurate suggestions in real-time. You can also use what3words as an input (UK only). + + Autocomplete search is designed to provide accurate suggestions in real-time. - + Enter the full address, then get results Validate search is designed to verify complete addresses. - + Enter partial address, then get results Singleline search is designed to find an exact or close match to an address based on two or three key address elements. - + Enter postcode or locality, then get results - Lookup v2 search is designed to determine locality information using postal/ZIP code of an address, & vice versa. + Lookup v2 is designed to return an address based on a key lookup as well as determine locality information using postal code of an address, and vice versa. + Available lookup types depend on the selected country dataset. diff --git a/src/css/experian-address-validation.css b/src/css/experian-address-validation.css index aeb4183..bc65f49 100644 --- a/src/css/experian-address-validation.css +++ b/src/css/experian-address-validation.css @@ -238,13 +238,13 @@ input.showing-suggestions { } .picklist-use-entered-option, -.address-picklist div:not(.selected) .what3Words-name { +.address-picklist div:not(.selected) .what3words-name { font-weight: bold; padding-bottom: 0px; } .picklist-use-entered-option, -.address-picklist div:not(.selected) .what3Words-description { +.address-picklist div:not(.selected) .what3words-description { font-style: italic; padding-top: 0px; font-size: 12px; diff --git a/src/js/address-metadata-display.js b/src/js/address-metadata-display.js index 3325822..a079605 100644 --- a/src/js/address-metadata-display.js +++ b/src/js/address-metadata-display.js @@ -112,7 +112,15 @@ function populateMetadata(data) { } document.querySelector(".metadata #delivery-address-key").innerHTML = data.result.address ? '' : ''; - document.querySelector(".metadata #delivery-address-value").innerHTML = data.result.address ? Object.values(data.result.address).filter(line => line !== "").join("") : ''; + if (data.result.address) { + document.querySelector(".metadata #delivery-address-value").innerHTML = Object.values(data.result.address).filter(line => line !== "").join(""); + } else if (data.result.addresses_formatted[0].address.gas_meters) { + document.querySelector(".metadata #delivery-address-value").innerHTML = Object.entries(data.result.addresses_formatted[0].address.gas_meters[0]).filter(line => line[1] !== "").map(x => x[0] + ": " + x[1]).join(""); + } else if (data.result.addresses_formatted[0].address.electricity_meters) { + document.querySelector(".metadata #delivery-address-value").innerHTML = Object.entries(data.result.addresses_formatted[0].address.electricity_meters[0]).filter(line => line[1] !== "").map(x => x[0] + ": " + x[1]).join(""); + } else { + document.querySelector(".metadata #delivery-address-value").innerHTML = ''; + } document.querySelector(".metadata").classList.remove("invisible"); populateAddressAdditionalInfo(address.componentsCollectionMap, document.querySelector("#components-collection")); diff --git a/src/js/search-address-handling.js b/src/js/search-address-handling.js index 6378a4a..7dca5bf 100644 --- a/src/js/search-address-handling.js +++ b/src/js/search-address-handling.js @@ -1,7 +1,8 @@ // Set the custom options var options = { - searchType: 'autocomplete', + searchType: 'combined', maxSuggestions: 10, + maxSuggestionsForLookup: 1000, useSpinner: false, elements: { countryList: document.querySelector("select"), @@ -52,6 +53,23 @@ address.events.on("post-datasets-update", function() { } }); +// Show the supported search types for the selected country +address.events.on("post-country-list-change", function(supportedSearchTypes, currentSearchType) { + // Reset all search types to hidden + document.querySelectorAll('.search-type-selector').forEach(panel => panel.classList.add('hidden')); + document.querySelectorAll('label[data-panel-type]').forEach(label => label.classList.add('hidden')); + + // Show all search types available for the selected country + // Excluding Typedown while not supported in the demo + supportedSearchTypes.filter(x => x != 'typedown').forEach(searchType => (document.querySelectorAll("label[data-panel-type~='" + searchType + "']")).forEach(panel => panel.classList.remove('hidden'))); + + // Toggle which panel should be selected + document.querySelectorAll('.search-type-selector').forEach(panel => panel.classList.remove('search-type-selected')); + document.querySelector("label.search-type-selector[data-panel-type='" + currentSearchType + "']").classList.add('search-type-selected'); + radiobtn = document.getElementById(currentSearchType + "-radio"); + radiobtn.checked = true; +}); + // Show the large spinner while we're searching for the formatted address address.events.on("pre-formatting-search", function() { document.querySelector(".loader").classList.remove("hidden"); @@ -62,7 +80,7 @@ address.events.on("post-formatting-search", function(data) { document.querySelector(".loader").classList.add("hidden"); document.querySelector("#validated-address-info").classList.remove("hidden"); - if (data.result.confidence !== "No matches" || address.searchType === 'autocomplete') { + if (data.result.confidence !== "No matches" || address.searchType === 'combined' || address.searchType === 'autocomplete') { // Show the formatted address fields document.querySelector(".formatted-address").classList.remove("hidden"); document.querySelectorAll(".formatted-address .hidden").forEach(element => element.classList.remove("hidden")); @@ -163,7 +181,7 @@ address.events.on("post-promptset-check", function(response) { // Hide or show a "Find address" button depending on the search type document.querySelector("button#find-address-button").classList[ - (address.searchType !== "autocomplete") ? 'remove' : 'add']("hidden"); + (address.searchType !== "autocomplete" && address.searchType !== "combined") ? 'remove' : 'add']("hidden"); }); // To display error when unsupported search type is selected diff --git a/src/ts/address-search.ts b/src/ts/address-search.ts index f4c8ab2..0942a9b 100644 --- a/src/ts/address-search.ts +++ b/src/ts/address-search.ts @@ -10,6 +10,7 @@ import { defaults } from './search-options'; import {datasetCodes} from './datasets-codes'; +import {predefinedFormats} from './predefined-formats'; import {translations} from './translations'; import { AddressValidationResult, @@ -22,6 +23,7 @@ import { Picklist, PicklistItem, PoweredByLogo, + PredefinedFormats, SearchResponse, What3WordsPickList } from './class-types'; @@ -36,7 +38,7 @@ export default class AddressValidation { public events; public request: Request; - public countryDropdown: {country: string, iso3Code: string, iso2Code: string, datasetCode: string, searchType: string}[] = []; + public countryDropdown: {country: string, iso3Code: string, iso2Code: string, datasetCodes: string[], searchTypes: string[]}[] = []; public componentsCollectionMap = new Map(); public metadataCollectionMap = new Map(); public geocodes: EnrichmentDetails = new EnrichmentDetails(); @@ -62,7 +64,7 @@ export default class AddressValidation { private returnAddresses: boolean; private currentCountryCode: string; private currentCountryName: string; - private currentDataSet: string | string[]; + private currentDataSet: string[]; private hasSearchInputBeenReset: boolean; private countryCodeMapping; private lookupFn; @@ -181,6 +183,7 @@ export default class AddressValidation { this.createPicklist(); // Set the default search mode + this.searchType = AddressValidationSearchType.COMBINED; this.avMode = AddressValidationMode.SEARCH; } else { // Trigger a 401 Unauthorized event if a token does not exist @@ -230,11 +233,11 @@ export default class AddressValidation { private getPromptset(): void { if (this.currentCountryCode) { // Using the country code and the search type, lookup what the relevant dataset code should be - this.currentDataSet = this.lookupDatasetCode(); + this.currentDataSet = this.lookupDatasetCodes(); if (this.currentDataSet) { /// Temporary measure until the promptset endpoint supports Autocomplete and Validate - if (this.searchType === AddressValidationSearchType.AUTOCOMPLETE) { + if (this.searchType === AddressValidationSearchType.AUTOCOMPLETE || this.searchType === AddressValidationSearchType.COMBINED) { setTimeout(() => this.handlePromptsetResult({ result: { lines: [{ example: this.options.placeholderText, prompt: 'Address', suggested_input_length: 160 }] } })); return; } else if (this.searchType === AddressValidationSearchType.VALIDATE) { @@ -249,14 +252,16 @@ export default class AddressValidation { setTimeout(() => this.handlePromptsetResult({ result: { lines } })); return; } else if (this.searchType === AddressValidationSearchType.LOOKUPV2) { + const tempDatasets = JSON.stringify(this.currentDataSet.map(x => x.toUpperCase()).sort()); const lines = [ {prompt: 'Lookup type', suggested_input_length: 160, - dropdown_options: [AddressValidationLookupKeywords.LOCALITY, AddressValidationLookupKeywords.POSTAL_CODE]}, - {prompt: 'Add addresses (If "true" concrete addresses are returned in the response)', + dropdown_options: Object.values(AddressValidationLookupKeywords) + .filter(type => type.dataset.length == 0 || type.dataset.map(x => JSON.stringify(x.map(y => y.toUpperCase()).sort())).some(x => x == tempDatasets))}, + {prompt: 'Return addresses - if "true" addresses are returned in the response', suggested_input_length: 160, dropdown_options: Object.values(AddAddressesOptions)}, - {prompt: 'Lookup value ', suggested_input_length: 160} + {prompt: 'Lookup value', suggested_input_length: 160} ]; - setTimeout(() => this.handlePromptsetResult({result: {lines}})); + setTimeout(() => this.handlePromptsetResult({result: { lines } })); return; } @@ -275,13 +280,33 @@ export default class AddressValidation { } } - private lookupDatasetCode(): string | string[] { + private lookupDatasetCodes(): string[] { const item = datasetCodes.find(dataset => dataset.iso3Code === this.currentCountryCode && dataset.country === this.currentCountryName - && dataset.searchType.includes(this.searchType)); + && dataset.searchTypes.includes(this.searchType)); if (item) { - return item.datasetCode; + return item.datasetCodes; + } + } + + private lookupSearchTypes(countryCode: string, countryName: string): string[] { + const items = datasetCodes.filter(dataset => + dataset.iso3Code === countryCode + && dataset.country === countryName); + if (items.length > 0) { + const searchTypePriorityOrder = Object.values(AddressValidationSearchType); + return items.flatMap(x => x.searchTypes) + .map(y => AddressValidationSearchType[y.toUpperCase()]) + .sort((a, b) => searchTypePriorityOrder.indexOf(a) - searchTypePriorityOrder.indexOf(b)); + } + } + + private readPredefinedFormats(): PredefinedFormats[] { + const item = predefinedFormats.filter(format => + format.countryIso === this.currentCountryCode); + if (item) { + return item; } } @@ -302,7 +327,7 @@ export default class AddressValidation { this.getPromptset(); } - if (this.searchType !== AddressValidationSearchType.AUTOCOMPLETE) { + if (this.searchType !== AddressValidationSearchType.AUTOCOMPLETE && this.searchType !== AddressValidationSearchType.COMBINED) { // Bind an event listener on the lookup button if (this.options.elements.lookupButton) { this.lookupFn = this.search.bind(this); @@ -316,10 +341,11 @@ export default class AddressValidation { this.inputs = Array.from(inputs); this.inputs.forEach(input => { - // Disable autocomplete on the form field - input.setAttribute('autocomplete', 'new-password'); + // Disable autocomplete on the form fields + input.setAttribute(AddressValidationSearchType.AUTOCOMPLETE, 'new-password'); + input.setAttribute(AddressValidationSearchType.COMBINED, 'new-password'); - if (this.searchType === AddressValidationSearchType.AUTOCOMPLETE) { + if (this.searchType === AddressValidationSearchType.AUTOCOMPLETE || this.searchType === AddressValidationSearchType.COMBINED) { // Bind an event listener on the input this.keyUpFn = this.search.bind(this); input.addEventListener('keyup', this.keyUpFn); @@ -365,30 +391,63 @@ export default class AddressValidation { if (countries && countries.length > 0) { for (const country of countries) { for (const countryDataset of Object.values(country.datasets)) { - const item = datasetCodes.find(dataset => dataset.datasetCode === countryDataset.id); + const item = datasetCodes.find(dataset => dataset.datasetCodes.length == 1 && dataset.datasetCodes[0] === countryDataset.id); if (item && !this.countryDropdown.find(o => o.country === item.country)) { this.countryDropdown.push(item); } } + + if (country.valid_combinations) { + country.valid_combinations.forEach(countryDatasetCombination => { + let sorted = countryDatasetCombination.slice().sort() + const item = datasetCodes.find(dataset => Array.isArray(dataset.datasetCodes) + && dataset.datasetCodes.length === sorted.length + && dataset.datasetCodes.slice().sort().every(function(value, index) { return value === sorted[index]; })) + if (item && !this.countryDropdown.find(o => o.country === item.country)) { + this.countryDropdown.push(item); + } + }); + } } this.countryDropdown.sort((a, b) => a.country.localeCompare(b.country)) this.events.trigger('post-datasets-update'); } } - // When a country from the list is changed, update the current country code, call the promptset endpoint again and reset to the default search mode + // When a country from the list is changed, update the current country code, call the promptset endpoint again private handleCountryListChange(): void { let countryList = this.options.elements.countryList; + this.currentCountryCode = countryList.value; this.currentCountryName = countryList[countryList.selectedIndex].label; this.getPromptset(); + + // If supported, keep the same search type as previous search, otherwise select the first one from the array + // of available search types + let availableSearchTypes = this.lookupSearchTypes(this.currentCountryCode, this.currentCountryName); + let isCurrentSearchTypeSupported: boolean = false; + + if (this.searchType !== null){ + isCurrentSearchTypeSupported = availableSearchTypes.indexOf(this.searchType) >= 0 ? true : false; + } + + if (!isCurrentSearchTypeSupported){ + this.searchType = AddressValidationSearchType[availableSearchTypes[0].toUpperCase()]; + this.setInputs(); + this.events.trigger('post-search-type-change', this.searchType); + } + + // Set to default search mode this.avMode = AddressValidationMode.SEARCH; + + // Trigger a new event to notify subscribers + this.events.trigger('post-country-list-change', availableSearchTypes, this.searchType); } private generateSearchDataForApiCall(): string { // If a dataset code hasn't been set yet, try and look it up if (!this.currentDataSet) { - this.currentDataSet = this.lookupDatasetCode(); + this.currentDataSet = this.lookupDatasetCodes(); } const data = { @@ -415,17 +474,17 @@ export default class AddressValidation { } ]; - if (this.currentDataSet === "gb-address" - || this.currentDataSet === "gb-additional-multipleresidence" - || this.currentDataSet === "gb-additional-notyetbuilt" - || this.currentDataSet === "gb-address-addressbase" - || this.currentDataSet === "gb-additional-addressbaseislands" - || this.currentDataSet === "gb-additional-business" - || this.currentDataSet === "gb-additional-electricity" - || this.currentDataSet === "gb-additional-gas" - || this.currentDataSet === "gb-address-streetlevel" - || this.currentDataSet === "gb-additional-businessextended" - || this.currentDataSet === "gb-address-wales"){ + if (this.currentDataSet.includes("gb-address") + || this.currentDataSet.includes("gb-additional-multipleresidence") + || this.currentDataSet.includes("gb-additional-notyetbuilt") + || this.currentDataSet.includes("gb-address-addressbase") + || this.currentDataSet.includes("gb-additional-addressbaseislands") + || this.currentDataSet.includes("gb-additional-business") + || this.currentDataSet.includes("gb-additional-electricity") + || this.currentDataSet.includes("gb-additional-gas") + || this.currentDataSet.includes("gb-address-streetlevel") + || this.currentDataSet.includes("gb-additional-businessextended") + || this.currentDataSet.includes("gb-address-wales")){ data['attributes'] = { "uk_location_essential":[ "latitude", @@ -438,7 +497,7 @@ export default class AddressValidation { ] }; } - else if(this.currentDataSet === "us-address"){ + else if(this.currentDataSet.includes("us-address")){ data['attributes'] = { "usa_location_insight":[ "delivery_point_barcode", @@ -455,9 +514,9 @@ export default class AddressValidation { ] }; } - else if (this.currentDataSet === "au-address" - || this.currentDataSet === "au-address-gnaf" - || this.currentDataSet === "au-address-datafusion"){ + else if (this.currentDataSet.includes("au-address") + || this.currentDataSet.includes("au-address-gnaf") + || this.currentDataSet.includes("au-address-datafusion")){ data['attributes']['AUS_CV_Household'] = [ "address", "adults_at_address_code", @@ -607,20 +666,42 @@ export default class AddressValidation { return JSON.stringify(data); } - private generateLookupDataForApiCall(input: string, lookupKeyword: string): string { + private generateLookupDataForApiCall(input: string, avMode: AddressValidationMode): string { // If a dataset code hasn't been set yet, try and look it up if (!this.currentDataSet) { - this.currentDataSet = this.lookupDatasetCode(); + this.currentDataSet = this.lookupDatasetCodes(); + } + + // Set the dataset and layout for the Utilities Proposition. The default country drop down combines gas and electricity. + // Lookup by MPAN or MPRN requires a single dataset to be targeted instead. + let datasets = []; + let layouts = []; + switch (avMode) { + case AddressValidationMode.MPAN: + if (this.currentDataSet.includes('gb-additional-electricity')) { + datasets.push('gb-additional-electricity'); + } + layouts.push('ElectricityUtilityLookup'); + break; + case AddressValidationMode.MPRN: + if (this.currentDataSet.includes('gb-additional-gas')) { + datasets.push('gb-additional-gas'); + } + layouts.push('GasUtilityLookup'); + break; + default: + datasets = Array.isArray(this.currentDataSet) ? this.currentDataSet : [ this.currentDataSet ]; } const data = { country_iso: this.currentCountryCode, - datasets: Array.isArray(this.currentDataSet) ? this.currentDataSet : [this.currentDataSet], - max_suggestions: (this.options.maxSuggestions || this.picklist.maxSuggestions), + datasets: datasets, + max_suggestions: (this.options.maxSuggestionsForLookup || this.picklist.maxSuggestions), key: { - type: lookupKeyword, + type: this.generateLookupType(avMode), value: input, - } + }, + layouts: layouts, }; return JSON.stringify(data); @@ -660,6 +741,9 @@ export default class AddressValidation { private search(event: KeyboardEvent): void { event.preventDefault(); + // Reset the search mode to default value + this.avMode = AddressValidationMode.SEARCH; + // Grab the country ISO code and (if it is present) the dataset name from the current value of the countryList (format: {countryIsoCode};{dataset}) const currentCountryInfo = this.countryCodeMapping[this.currentCountryCode] || this.currentCountryCode; const countryCodeAndDataset = currentCountryInfo.split(';'); @@ -688,25 +772,15 @@ export default class AddressValidation { this.request.currentRequest.abort(); } - // Regex that checks if the input is the format for a what3words search. Ex: ///a.b.c - let regex = /^\/{0,}(?:[^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+|[^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3}[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3}[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3})$/; - - if (regex.test(this.currentSearchTerm.trim())) { - this.avMode = AddressValidationMode.WHAT3WORDS; - this.currentSearchTerm = this.currentSearchTerm.trim(); - } else if (this.avMode != AddressValidationMode.LOOKUPV2){ - this.avMode = AddressValidationMode.SEARCH; - } - - // is UPRN or UDPRN - regex = /^\d{12}|\d{8}$/; - if (regex.test(this.currentSearchTerm.trim())) { - this.avMode = AddressValidationMode.UDPRN; - this.currentSearchTerm = this.currentSearchTerm.trim(); - } - - if (this.currentSearchTerm.includes('locality', 0) || this.currentSearchTerm.includes('postal_code', 0)) { - this.avMode = AddressValidationMode.LOOKUPV2; + // Determine the search mode from the supplied input when in combined mode. + if (this.searchType == AddressValidationSearchType.COMBINED) { + let predefinedFormats = this.readPredefinedFormats(); + predefinedFormats.find(predefinedItem => { + if (predefinedItem.format.test(this.currentSearchTerm.trim())) { + this.avMode = predefinedItem.mode; + this.currentSearchTerm = this.currentSearchTerm.trim(); + } + }); } // Fire an event before a search takes place @@ -720,32 +794,43 @@ export default class AddressValidation { this.searchSpinner.show(); let url, headers, callback, data; + // Determine search mode and search term for key lookups + if (this.searchType === AddressValidationSearchType.LOOKUPV2) { + const lookupSearchTerm = this.currentSearchTerm.split(','); + this.avMode = AddressValidationMode[lookupSearchTerm[0].toUpperCase() as keyof typeof AddressValidationMode]; + this.returnAddresses = lookupSearchTerm[1] === "true"; + this.currentSearchTerm = lookupSearchTerm[2].trim(); + } + // Construct the new Search URL and data switch(this.avMode as any) { case AddressValidationMode.WHAT3WORDS: { - data = this.generateLookupDataForApiCall(this.getWhat3WordsLookupValue(this.currentSearchTerm, true), AddressValidationLookupKeywords.WHAT3WORDS.key); + data = this.generateLookupDataForApiCall(this.getWhat3WordsLookupValue(this.currentSearchTerm, true), this.avMode); url = this.baseUrl + this.lookupV2Endpoint; headers = []; callback = this.picklist.showWhat3Words; break; } - case AddressValidationMode.UDPRN: { + case AddressValidationMode.MPAN: + case AddressValidationMode.MPRN: { this.returnAddresses = true; - data = this.generateLookupDataForApiCall(this.currentSearchTerm, AddressValidationLookupKeywords.UDPRN.key); + data = this.generateLookupDataForApiCall(this.currentSearchTerm, this.avMode); url = this.baseUrl + this.lookupV2Endpoint; - headers = [{ key: 'Add-Addresses', value: true }]; - callback = this.picklist.showLookup; + headers = [{ key: 'Add-FinalAddress', value: true }]; + callback = this.result.handleUtilitiesLookupResponse; break; } - case AddressValidationMode.LOOKUPV2: { - const lookupSearchTerm = this.currentSearchTerm.split(','); - this.lookupType = lookupSearchTerm[0]; - this.returnAddresses = lookupSearchTerm[1] === "true"; - let lookupValue = lookupSearchTerm[2]; + case AddressValidationMode.UDPRN: + case AddressValidationMode.POSTAL_CODE: + case AddressValidationMode.LOCALITY: { + // Always return addresses if the combined search type is selected. The form has no toggle to turn this on or off. + if (this.searchType === AddressValidationSearchType.COMBINED) { + this.returnAddresses = true; + } - data = this.generateLookupDataForApiCall(lookupValue.trim(), this.lookupType); + data = this.generateLookupDataForApiCall(this.currentSearchTerm, this.avMode); url = this.baseUrl + this.lookupV2Endpoint; - headers = [{key: 'Add-Addresses', value: true}]; + headers = [{ key: 'Add-Addresses', value: true }]; callback = this.picklist.showLookup; break; } @@ -992,7 +1077,7 @@ export default class AddressValidation { this.picklist.handleEmptyPicklist = (items: SearchResponse | LookupW3WResponse | LookupV2Response) => { // Create a new item/row in the picklist showing "No matches" that allows the "use address entered" option - this.picklist.useAddressEntered.element = this.picklist.useAddressEntered.element || this.picklist.useAddressEntered.create(items.result?.confidence); + this.picklist.useAddressEntered.element = this.picklist.useAddressEntered.element || this.picklist.useAddressEntered.create(items.result?.confidence); this.picklist.scrollIntoViewIfNeeded(); @@ -1151,9 +1236,9 @@ export default class AddressValidation { const name = document.createElement('div'); const description = document.createElement('div'); - row.className = AddressValidationLookupKeywords.WHAT3WORDS.key; - name.className = 'what3Words-name'; - description.className = 'what3Words-description'; + row.className = 'what3words'; + name.className = 'what3words-name'; + description.className = 'what3words-description'; name.innerHTML = '///' + item.what3words.name; description.innerHTML = item.what3words.description; @@ -1168,8 +1253,8 @@ export default class AddressValidation { // Create a new picklist item/row for lookup items this.picklist.createLookupListItem = (item: LookupAddress) => { const row = document.createElement('div'); - - row.innerHTML = item.text; + + row.innerHTML = this.picklist.addMatchingEmphasis(item); // Store the Format URL if it exists, otherwise use the global_address_key as a "refinement" property if (item.format) { @@ -1202,8 +1287,9 @@ export default class AddressValidation { // The user is prompted to enter their selection (e.g. building number). isNeeded: (response: SearchResponse) => { return this.searchType !== AddressValidationSearchType.AUTOCOMPLETE + && this.searchType !== AddressValidationSearchType.COMBINED && (response.result.confidence === AddressValidationConfidenceType.PREMISES_PARTIAL - || response.result.confidence === AddressValidationConfidenceType.STREET_PARTIAL + || response.result.confidence === AddressValidationConfidenceType.STREET_PARTIAL || response.result.confidence === AddressValidationConfidenceType.MULTIPLE_MATCHES); }, createInput: (prompt: string, key: string) => { @@ -1214,7 +1300,8 @@ export default class AddressValidation { input.setAttribute('type', 'text'); input.setAttribute('placeholder', prompt); input.setAttribute('key', key); - input.setAttribute('autocomplete', 'new-password'); + input.setAttribute(AddressValidationSearchType.AUTOCOMPLETE, 'new-password'); + input.setAttribute(AddressValidationSearchType.COMBINED, 'new-password'); input.addEventListener('keydown', this.picklist.refine.enter.bind(this)); this.picklist.refine.element = input; @@ -1379,7 +1466,11 @@ export default class AddressValidation { // Get a final address using picklist item unless it needs refinement if (item.getAttribute('format')) { - this.format(item.getAttribute('format')); + if (Array.isArray(this.currentDataSet) && this.currentDataSet.slice().sort() === ['gb-additional-electricity', 'gb-additional-gas'].slice().sort()) { + this.format(item.getAttribute('format', 'utilities')); + } else { + this.format(item.getAttribute('format')); + } } else { this.refine(item.getAttribute('refine')); } @@ -1392,14 +1483,13 @@ export default class AddressValidation { this.result.updateAddressLine("postal_code", item.getAttribute("postal_code_name"), 'address-line-input'); this.result.updateAddressLine("country", item.getAttribute("country"), 'address-line-input'); - let key = AddressValidationLookupKeywords.POSTAL_CODE.key === this.lookupType - ? 'postal_code_key' : 'locality_key'; + let key = AddressValidationLookupKeywords.POSTAL_CODE.key === this.lookupType ? 'postal_code_key' : 'locality_key'; // Create the 'Search again' link and insert into DOM this.result.createSearchAgainLink(); this.events.trigger('post-formatting-lookup', item.getAttribute(key), item); } - private format(url: string) { + private format(url: string, layout?: string) { // Trigger an event this.events.trigger('pre-formatting-search', url); @@ -1407,7 +1497,7 @@ export default class AddressValidation { this.searchSpinner.hide(); let data = { - layouts: [ "default" ], + layouts: layout ? [ layout ] : [ "default" ], layout_format: "default", attributes: this.getEnrichmentAttributes(url.split('/')[6]) } @@ -1435,8 +1525,8 @@ export default class AddressValidation { // Hide the searching spinner this.searchSpinner.hide(); - //Get the lookup requet - const lookupV2Request = this.generateLookupDataForApiCall(key, AddressValidationLookupKeywords.WHAT3WORDS.key); + // Get the lookup request + const lookupV2Request = this.generateLookupDataForApiCall(key, AddressValidationMode.WHAT3WORDS); const url = this.baseUrl + this.lookupV2Endpoint; const headers = [{ key: 'Add-Addresses', value: true }]; @@ -1533,6 +1623,72 @@ export default class AddressValidation { // Fire an event to say we've got the formatted address this.events.trigger('post-formatting-search', data); }, + + showLookupV2: (data: LookupV2Response) => { + // Hide the inline search spinner + this.searchSpinner.hide(); + + // Hide the picklist + this.picklist.hide(); + + // Clear the previous search term + this.lastSearchTerm = ''; + + // Only render the final address if there are results available. + if (data.result.addresses_formatted) { + // Clear search input(s) + this.inputs.forEach(input => input.value = ''); + + // Calculate if we needed to generate the formatted address input fields later + this.result.calculateIfAddressLineGenerationRequired(); + + // Get formatted address container element + // Only create a container if we're creating inputs. Otherwise the user will have their own container. + this.result.formattedAddressContainer = this.options.elements.formattedAddressContainer; + if (!this.result.formattedAddressContainer && this.result.generateAddressLineRequired) { + this.result.createFormattedAddressContainer(); + } + + // Map some of the custom layout response for Utitly data to the existing address elements. All elements will be shown in validated adress panel. + let mappedResponse: AddressSearchOptions["elements"] = {} + if (data.result.addresses_formatted[0].address.gas_meters) { + mappedResponse = { + address_line_1: data.result.addresses_formatted[0].address.gas_meters[0].rel_address_primary_name, + address_line_2: data.result.addresses_formatted[0].address.gas_meters[0].rel_address_street1, + locality: data.result.addresses_formatted[0].address.gas_meters[0].rel_address_town, + postal_code: data.result.addresses_formatted[0].address.gas_meters[0].rel_address_postcode, + country: data.result.addresses_formatted[0].address.gas_meters[0].rel_address_country ? data.result.addresses_formatted[0].address.gas_meters[0].rel_address_country : "United Kingdom", + }; + } else if (data.result.addresses_formatted[0].address.electricity_meters) { + mappedResponse = { + address_line_1: data.result.addresses_formatted[0].address.electricity_meters[0].address_line_3, + address_line_2: data.result.addresses_formatted[0].address.electricity_meters[0].address_line_5, + locality: data.result.addresses_formatted[0].address.electricity_meters[0].address_line_8, + postal_code: data.result.addresses_formatted[0].address.electricity_meters[0].address_postal_code, + country: data.result.addresses_formatted[0].address.electricity_meters[0].address_country ? data.result.addresses_formatted[0].address.electricity_meters[0].address_country : "United Kingdom", + }; + } + + for (let i = 0; i < Object.keys(mappedResponse).length; i++) { + const key = Object.keys(mappedResponse)[i]; + const addressComponent = mappedResponse[key]; + // Bind the address element to the user's address field (or create a new one) + this.result.updateAddressLine(key, addressComponent, 'address-line-input'); + } + + // Hide country and address search fields (if they have a 'toggle' class) + this.toggleSearchInputs('hide'); + + // Enable users to search again subsequently + this.hasSearchInputBeenReset = true; + + // Create the 'Search again' link and insert into DOM + this.result.createSearchAgainLink(); + } + + // Fire an event to say we've got the formatted address + this.events.trigger('post-formatting-search', data); + }, hide: () => { // Delete the formatted address container if (this.result.formattedAddressContainer) { @@ -1717,6 +1873,23 @@ export default class AddressValidation { } } }, + + // Decide whether to either show a picklist or a verified result from a Utilities lookup response + handleUtilitiesLookupResponse: (data: LookupV2Response) => { + if (data.result.confidence === AddressValidationConfidenceType.VERIFIED_MATCH) { + // If the response contains an address, then use this directly in the result + if (data.result.addresses_formatted) { + this.result.showLookupV2(data); + } + } else if (data.result.confidence === 'No matches') { + // If there are no matches, then allow "use address entered" + this.picklist.handleEmptyPicklist(data); + } + + // Fire an event to say we've got the formatted address + this.events.trigger('post-formatting-search', data); + }, + // Decide whether to either show a picklist or a verified result from a Validate response handleValidateResponse: (response: SearchResponse) => { if (response.result.confidence === AddressValidationConfidenceType.VERIFIED_MATCH @@ -1880,8 +2053,10 @@ export default class AddressValidation { } // Enable searching this.options.enabled = true; + // Hide formatted address this.result.hide(); + // Reset search input back this.hasSearchInputBeenReset = true; @@ -1894,9 +2069,8 @@ export default class AddressValidation { // Apply focus to input this.inputs[0].focus(); - // set AddressValidationMode based on the search type selected - this.avMode = AddressValidationSearchType.LOOKUPV2 === this.searchType - ? AddressValidationMode.LOOKUPV2 : AddressValidationMode.SEARCH; + // set AddressValidationMode back to default + this.avMode = AddressValidationMode.SEARCH; // Fire an event after a reset this.events.trigger('post-reset'); @@ -1905,11 +2079,28 @@ export default class AddressValidation { private isInternationalValidation(): boolean { // Return true if the current dataset indicates this is a international data validation call if (this.searchType === AddressValidationSearchType.VALIDATE - && !Array.isArray(this.currentDataSet) - && this.currentDataSet.toUpperCase().endsWith("-ED")) { + && this.currentDataSet.length == 1 + && this.currentDataSet[0].toUpperCase().endsWith("-ED")) { return true; } return false; } + + private generateLookupType(avMode: AddressValidationMode): string { + switch(avMode as any) { + case AddressValidationMode.WHAT3WORDS: + return AddressValidationLookupKeywords.WHAT3WORDS.key; + case AddressValidationMode.UDPRN: + return AddressValidationLookupKeywords.UDPRN.key; + case AddressValidationMode.LOCALITY: + return AddressValidationLookupKeywords.LOCALITY.key; + case AddressValidationMode.POSTAL_CODE: + return AddressValidationLookupKeywords.POSTAL_CODE.key; + case AddressValidationMode.MPAN: + return AddressValidationLookupKeywords.MPAN.key; + case AddressValidationMode.MPRN: + return AddressValidationLookupKeywords.MPRN.key; + } + } } diff --git a/src/ts/class-types.ts b/src/ts/class-types.ts index d8f7ed4..bcf04fd 100644 --- a/src/ts/class-types.ts +++ b/src/ts/class-types.ts @@ -1,3 +1,5 @@ +import { AddressValidationMode } from "./search-options"; + export class Picklist { items: PicklistItem[]; what3wordsItems: What3WordsPickList[]; @@ -38,6 +40,7 @@ export class AddressValidationResult { lastAddressField; generateAddressLineRequired: boolean; show: (data) => void; + showLookupV2: (data: LookupV2Response) => void; hide: () => void; createAddressLine: CreateAddressLine; createFormattedAddressContainer: () => void; @@ -49,6 +52,7 @@ export class AddressValidationResult { createSearchAgainLink: () => void; renderInputList: (inputArray) => void; handleValidateResponse: (response: SearchResponse) => void; + handleUtilitiesLookupResponse: (response: LookupV2Response) => void; handleEnrichmentResponse: (response: EnrichmentResponse) => void; } @@ -68,6 +72,7 @@ export interface SearchResponse { }, metadata? : { [key: string]: string }; } + export interface LookupW3WResponse { result?: { more_results_available: boolean; @@ -82,9 +87,20 @@ export interface LookupV2Response { confidence: string; suggestions: LookupSuggestion[]; addresses: LookupAddress[]; + addresses_formatted: CustomLookupAddressFormatted[]; } } +export interface CustomLookupAddressFormatted { + layout_name: string; + address: CustomLookupAddress; +} + +export interface CustomLookupAddress { + electricity_meters?: Object; + gas_meters?: Object; +} + export interface LookupSuggestion { locality: LocalityComponents; postal_code: PostalCode; @@ -163,11 +179,14 @@ export interface DatasetsCountryResult { country_iso_3?: string; country_name?: string; datasets?: Dataset[]; + valid_combinations?: string[][]; } + export interface Dataset{ id?: string; name?: string; } + export class UseAddressEntered { element: HTMLElement; create: (confidence: string) => HTMLDivElement; @@ -193,4 +212,11 @@ export class PoweredByLogo { create: (picklist) => HTMLDivElement; destroy: (picklist) => void; svg: string; -} \ No newline at end of file +} + +export class PredefinedFormats { + countryIso: string; + format: RegExp; + minLength: number; + mode: AddressValidationMode; +} diff --git a/src/ts/datasets-codes.ts b/src/ts/datasets-codes.ts index aca8fed..fd67015 100644 --- a/src/ts/datasets-codes.ts +++ b/src/ts/datasets-codes.ts @@ -1,465 +1,465 @@ export const datasetCodes = [ - {country: 'Afghanistan', iso3Code: 'AFG', iso2Code: 'AF', datasetCode: 'af-address-ed', searchType: 'singleline, validate'}, - {country: 'Afghanistan', iso3Code: 'AFG', iso2Code: 'AF', datasetCode: 'af-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Albania', iso3Code: 'ALB', iso2Code: 'AL', datasetCode: 'al-address-ed', searchType: 'singleline, validate'}, - {country: 'Albania', iso3Code: 'ALB', iso2Code: 'AL', datasetCode: 'al-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Algeria', iso3Code: 'DZA', iso2Code: 'DZ', datasetCode: 'dz-address-ed', searchType: 'singleline, validate'}, - {country: 'Algeria', iso3Code: 'DZA', iso2Code: 'DZ', datasetCode: 'dz-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'American Samoa', iso3Code: 'ASM', iso2Code: 'AS', datasetCode: 'as-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Andorra', iso3Code: 'AND', iso2Code: 'AD', datasetCode: 'ad-address-ed', searchType: 'singleline, validate'}, - {country: 'Andorra', iso3Code: 'AND', iso2Code: 'AD', datasetCode: 'ad-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Angola', iso3Code: 'AGO', iso2Code: 'AO', datasetCode: 'ao-address-ed', searchType: 'singleline, validate'}, - {country: 'Angola', iso3Code: 'AGO', iso2Code: 'AO', datasetCode: 'ao-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Anguilla', iso3Code: 'AIA', iso2Code: 'AI', datasetCode: 'ai-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Antarctica', iso3Code: 'ATA', iso2Code: 'AQ', datasetCode: 'aq-address-ed', searchType: 'singleline, validate'}, - {country: 'Antigua and Barbuda', iso3Code: 'ATG', iso2Code: 'AG', datasetCode: 'ag-address-ed', searchType: 'singleline, validate'}, - {country: 'Antigua and Barbuda', iso3Code: 'ATG', iso2Code: 'AG', datasetCode: 'ag-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Argentina', iso3Code: 'ARG', iso2Code: 'AR', datasetCode: 'ar-address-ed', searchType: 'singleline, validate'}, - {country: 'Argentina', iso3Code: 'ARG', iso2Code: 'AR', datasetCode: 'ar-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Armenia', iso3Code: 'ARM', iso2Code: 'AM', datasetCode: 'am-address-ed', searchType: 'singleline, validate'}, - {country: 'Armenia', iso3Code: 'ARM', iso2Code: 'AM', datasetCode: 'am-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Aruba', iso3Code: 'ABW', iso2Code: 'AW', datasetCode: 'aw-address-ed', searchType: 'singleline, validate'}, - {country: 'Aruba', iso3Code: 'ABW', iso2Code: 'AW', datasetCode: 'aw-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Australia DataFusion', iso3Code: 'AUS', iso2Code: 'AU', datasetCode: 'au-address-datafusion', searchType: 'autocomplete, singleline, typedown, lookupv2'}, - {country: 'Australia Geocoded National Address', iso3Code: 'AUS', iso2Code: 'AU', datasetCode: 'au-address-gnaf', searchType: 'autocomplete, singleline, typedown, validate, lookupv2'}, - {country: 'Australia Postal Address', iso3Code: 'AUS', iso2Code: 'AU', datasetCode: 'au-address', searchType: 'autocomplete, singleline, typedown, validate, lookupv2'}, - {country: 'Austria', iso3Code: 'AUT', iso2Code: 'AT', datasetCode: 'at-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Austria', iso3Code: 'AUT', iso2Code: 'AT', datasetCode: 'az-address-ed', searchType: 'singleline, validate'}, - {country: 'Azerbaijan', iso3Code: 'AZE', iso2Code: 'AZ', datasetCode: 'az-address-ed', searchType: 'singleline, validate'}, - {country: 'Azerbaijan', iso3Code: 'AZE', iso2Code: 'AZ', datasetCode: 'az-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Bahamas', iso3Code: 'BHS', iso2Code: 'BS', datasetCode: 'bs-address-ed', searchType: 'singleline, validate'}, - {country: 'Bahamas', iso3Code: 'BHS', iso2Code: 'BS', datasetCode: 'bs-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Bahrain', iso3Code: 'BHR', iso2Code: 'BH', datasetCode: 'bh-address-ed', searchType: 'singleline, validate'}, - {country: 'Bahrain', iso3Code: 'BHR', iso2Code: 'BH', datasetCode: 'bh-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Bangladesh', iso3Code: 'BGD', iso2Code: 'BD', datasetCode: 'bd-address-ed', searchType: 'singleline, validate'}, - {country: 'Bangladesh', iso3Code: 'BGD', iso2Code: 'BD', datasetCode: 'bd-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Barbados', iso3Code: 'BRB', iso2Code: 'BB', datasetCode: 'bb-address-ed', searchType: 'singleline, validate'}, - {country: 'Barbados', iso3Code: 'BRB', iso2Code: 'BB', datasetCode: 'bb-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Belarus', iso3Code: 'BLR', iso2Code: 'BY', datasetCode: 'by-address-ed', searchType: 'singleline, validate'}, - {country: 'Belarus', iso3Code: 'BLR', iso2Code: 'BY', datasetCode: 'by-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Belgium', iso3Code: 'BEL', iso2Code: 'BE', datasetCode: 'be-address', searchType: 'singleline, typedown'}, - {country: 'Belgium', iso3Code: 'BEL', iso2Code: 'BE', datasetCode: 'be-address-ed', searchType: ' validate'}, - {country: 'Belgium', iso3Code: 'BEL', iso2Code: 'BE', datasetCode: 'be-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Belize', iso3Code: 'BLZ', iso2Code: 'BZ', datasetCode: 'bz-address-ed', searchType: 'singleline, validate'}, - {country: 'Belize', iso3Code: 'BLZ', iso2Code: 'BZ', datasetCode: 'bz-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Benin', iso3Code: 'BEN', iso2Code: 'BJ', datasetCode: 'bj-address-ed', searchType: 'singleline, validate'}, - {country: 'Benin', iso3Code: 'BEN', iso2Code: 'BJ', datasetCode: 'bj-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Bermuda', iso3Code: 'BMU', iso2Code: 'BM', datasetCode: 'bm-address-ed', searchType: 'singleline, validate'}, - {country: 'Bermuda', iso3Code: 'BMU', iso2Code: 'BM', datasetCode: 'bm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Bhutan', iso3Code: 'BTN', iso2Code: 'BT', datasetCode: 'bt-address-ed', searchType: 'singleline, validate'}, - {country: 'Bhutan', iso3Code: 'BTN', iso2Code: 'BT', datasetCode: 'bt-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Bolivia', iso3Code: 'BOL', iso2Code: 'BO', datasetCode: 'bo-address-ed', searchType: 'singleline, validate'}, - {country: 'Bolivia', iso3Code: 'BOL', iso2Code: 'BO', datasetCode: 'bo-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Bonaire, Sint Eustatius and Saba', iso3Code: 'BES', iso2Code: 'BQ', datasetCode: 'bq-address-ed', searchType: 'singleline, validate'}, - {country: 'Bonaire, Sint Eustatius and Saba', iso3Code: 'BES', iso2Code: 'BQ', datasetCode: 'bq-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Bosnia and Herzegovina', iso3Code: 'BIH', iso2Code: 'BA', datasetCode: 'ba-address-ed', searchType: 'singleline, validate'}, - {country: 'Bosnia and Herzegovina', iso3Code: 'BIH', iso2Code: 'BA', datasetCode: 'ba-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Botswana', iso3Code: 'BWA', iso2Code: 'BW', datasetCode: 'bw-address-ed', searchType: 'singleline, validate'}, - {country: 'Botswana', iso3Code: 'BWA', iso2Code: 'BW', datasetCode: 'bw-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Brazil', iso3Code: 'BRA', iso2Code: 'BR', datasetCode: 'br-address-ed', searchType: 'singleline, validate'}, - {country: 'Brazil', iso3Code: 'BRA', iso2Code: 'BR', datasetCode: 'br-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Brunei Darussalam', iso3Code: 'BRN', iso2Code: 'BN', datasetCode: 'bn-address-ed', searchType: 'singleline, validate'}, - {country: 'Brunei Darussalam', iso3Code: 'BRN', iso2Code: 'BN', datasetCode: 'bn-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Bulgaria', iso3Code: 'BGR', iso2Code: 'BG', datasetCode: 'bg-address-ed', searchType: 'singleline, validate'}, - {country: 'Bulgaria', iso3Code: 'BGR', iso2Code: 'BG', datasetCode: 'bg-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Burkina Faso', iso3Code: 'BFA', iso2Code: 'BF', datasetCode: 'bf-address-ed', searchType: 'singleline, validate'}, - {country: 'Burkina Faso', iso3Code: 'BFA', iso2Code: 'BF', datasetCode: 'bf-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Burundi', iso3Code: 'BDI', iso2Code: 'BI', datasetCode: 'bi-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Cambodia', iso3Code: 'KHM', iso2Code: 'KH', datasetCode: 'kh-address-ed', searchType: 'singleline, validate'}, - {country: 'Cambodia', iso3Code: 'KHM', iso2Code: 'KH', datasetCode: 'kh-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Cameroon', iso3Code: 'CMR', iso2Code: 'CM', datasetCode: 'cm-address-ed', searchType: 'singleline, validate'}, - {country: 'Cameroon', iso3Code: 'CMR', iso2Code: 'CM', datasetCode: 'cm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Canada', iso3Code: 'CAN', iso2Code: 'CA', datasetCode: 'ca-address', searchType: 'autocomplete, singleline, typedown, validate, lookupv2'}, - {country: 'Cape Verde', iso3Code: 'CPV', iso2Code: 'CV', datasetCode: 'cv-address-ed', searchType: 'singleline, validate'}, - {country: 'Cape Verde', iso3Code: 'CPV', iso2Code: 'CV', datasetCode: 'cv-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Cayman Islands', iso3Code: 'CYM', iso2Code: 'KY', datasetCode: 'ky-address-ed', searchType: 'singleline, validate'}, - {country: 'Cayman Islands', iso3Code: 'CYM', iso2Code: 'KY', datasetCode: 'ky-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Central African Republic', iso3Code: 'CAF', iso2Code: 'CF', datasetCode: 'cf-address-ed', searchType: 'singleline, validate'}, - {country: 'Central African Republic', iso3Code: 'CAF', iso2Code: 'CF', datasetCode: 'cf-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Chad', iso3Code: 'TCD', iso2Code: 'TD', datasetCode: 'td-address-ed', searchType: 'singleline, validate'}, - {country: 'Chad', iso3Code: 'TCD', iso2Code: 'TD', datasetCode: 'td-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Chile', iso3Code: 'CHL', iso2Code: 'CL', datasetCode: 'cl-address-ed', searchType: 'singleline, validate'}, - {country: 'Chile', iso3Code: 'CHL', iso2Code: 'CL', datasetCode: 'cl-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'China', iso3Code: 'CHN', iso2Code: 'CN', datasetCode: 'cn-address-ed', searchType: 'singleline, validate'}, - {country: 'China', iso3Code: 'CHN', iso2Code: 'CN', datasetCode: 'cn-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Christmas Island', iso3Code: 'CXR', iso2Code: 'CX', datasetCode: 'cx-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Cocos Island', iso3Code: 'CCK', iso2Code: 'CC', datasetCode: 'cc-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Colombia', iso3Code: 'COL', iso2Code: 'CO', datasetCode: 'co-address-ed', searchType: 'singleline, validate'}, - {country: 'Colombia', iso3Code: 'COL', iso2Code: 'CO', datasetCode: 'co-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Comoros', iso3Code: 'COM', iso2Code: 'KM', datasetCode: 'km-address-ed', searchType: 'singleline, validate'}, - {country: 'Comoros', iso3Code: 'COM', iso2Code: 'KM', datasetCode: 'km-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Congo', iso3Code: 'COG', iso2Code: 'CG', datasetCode: 'cg-address-ed', searchType: 'singleline, validate'}, - {country: 'Congo', iso3Code: 'COG', iso2Code: 'CG', datasetCode: 'cg-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Congo, The Democratic Republic of the', iso3Code: 'COD', iso2Code: 'CD', datasetCode: 'cd-address-ed', searchType: 'singleline, validate'}, - {country: 'Congo, The Democratic Republic of the', iso3Code: 'COD', iso2Code: 'CD', datasetCode: 'cd-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Cook Islands', iso3Code: 'COK', iso2Code: 'CK', datasetCode: 'ck-address-ed', searchType: 'singleline, validate'}, - {country: 'Cook Islands', iso3Code: 'COK', iso2Code: 'CK', datasetCode: 'ck-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Costa Rica', iso3Code: 'CRI', iso2Code: 'CR', datasetCode: 'cr-address-ed', searchType: 'singleline, validate'}, - {country: 'Costa Rica', iso3Code: 'CRI', iso2Code: 'CR', datasetCode: 'cr-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Croatia', iso3Code: 'HRV', iso2Code: 'HR', datasetCode: 'hr-address-ed', searchType: 'singleline, validate'}, - {country: 'Croatia', iso3Code: 'HRV', iso2Code: 'HR', datasetCode: 'hr-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Cuba', iso3Code: 'CUB', iso2Code: 'CU', datasetCode: 'cu-address-ed', searchType: 'singleline, validate'}, - {country: 'Cuba', iso3Code: 'CUB', iso2Code: 'CU', datasetCode: 'cu-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Curaçao', iso3Code: 'CUW', iso2Code: 'CW', datasetCode: 'cw-address-ed', searchType: 'singleline, validate'}, - {country: 'Curaçao', iso3Code: 'CUW', iso2Code: 'CW', datasetCode: 'cw-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Cyprus', iso3Code: 'CYP', iso2Code: 'CY', datasetCode: 'cy-address-ed', searchType: 'singleline, validate'}, - {country: 'Cyprus', iso3Code: 'CYP', iso2Code: 'CY', datasetCode: 'cy-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Czech Republic', iso3Code: 'CZE', iso2Code: 'CZ', datasetCode: 'cz-address-ed', searchType: 'singleline, validate'}, - {country: 'Czech Republic', iso3Code: 'CZE', iso2Code: 'CZ', datasetCode: 'cz-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Côte d\'Ivoire', iso3Code: 'CIV', iso2Code: 'CI', datasetCode: 'ci-address-ed', searchType: 'singleline, validate'}, - {country: 'Côte d\'Ivoire', iso3Code: 'CIV', iso2Code: 'CI', datasetCode: 'ci-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Denmark', iso3Code: 'DNK', iso2Code: 'DK', datasetCode: 'dk-address', searchType: 'singleline, typedown, validate'}, - {country: 'Denmark', iso3Code: 'DNK', iso2Code: 'DK', datasetCode: 'dk-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Djibouti', iso3Code: 'DJI', iso2Code: 'DJ', datasetCode: 'dj-address-ed', searchType: 'singleline, validate'}, - {country: 'Djibouti', iso3Code: 'DJI', iso2Code: 'DJ', datasetCode: 'dj-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Dominica', iso3Code: 'DMA', iso2Code: 'DM', datasetCode: 'dm-address-ed', searchType: 'singleline, validate'}, - {country: 'Dominica', iso3Code: 'DMA', iso2Code: 'DM', datasetCode: 'dm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Dominican Republic', iso3Code: 'DOM', iso2Code: 'DO', datasetCode: 'do-address-ed', searchType: 'singleline, validate'}, - {country: 'Dominican Republic', iso3Code: 'DOM', iso2Code: 'DO', datasetCode: 'do-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Ecuador', iso3Code: 'ECU', iso2Code: 'EC', datasetCode: 'ec-address-ed', searchType: 'singleline, validate'}, - {country: 'Ecuador', iso3Code: 'ECU', iso2Code: 'EC', datasetCode: 'ec-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Egypt', iso3Code: 'EGY', iso2Code: 'EG', datasetCode: 'eg-address-ed', searchType: 'singleline, validate'}, - {country: 'Egypt', iso3Code: 'EGY', iso2Code: 'EG', datasetCode: 'eg-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'El Salvador', iso3Code: 'SLV', iso2Code: 'SV', datasetCode: 'sv-address-ed', searchType: 'singleline, validate'}, - {country: 'El Salvador', iso3Code: 'SLV', iso2Code: 'SV', datasetCode: 'sv-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Equatorial Guinea', iso3Code: 'GNQ', iso2Code: 'GQ', datasetCode: 'gq-address-ed', searchType: 'singleline, validate'}, - {country: 'Equatorial Guinea', iso3Code: 'GNQ', iso2Code: 'GQ', datasetCode: 'gq-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Eritrea', iso3Code: 'ERI', iso2Code: 'ER', datasetCode: 'er-address-ed', searchType: 'singleline, validate'}, - {country: 'Eritrea', iso3Code: 'ERI', iso2Code: 'ER', datasetCode: 'er-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Estonia', iso3Code: 'EST', iso2Code: 'EE', datasetCode: 'ee-address-ed', searchType: 'singleline, validate'}, - {country: 'Estonia', iso3Code: 'EST', iso2Code: 'EE', datasetCode: 'ee-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Ethiopia', iso3Code: 'ETH', iso2Code: 'ET', datasetCode: 'et-address-ed', searchType: 'singleline, validate'}, - {country: 'Ethiopia', iso3Code: 'ETH', iso2Code: 'ET', datasetCode: 'et-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Falkland Islands (Malvinas)', iso3Code: 'FLK', iso2Code: 'FK', datasetCode: 'fk-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Faroe Islands', iso3Code: 'FRO', iso2Code: 'FO', datasetCode: 'fo-address-ed', searchType: 'singleline, validate'}, - {country: 'Faroe Islands', iso3Code: 'FRO', iso2Code: 'FO', datasetCode: 'fo-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Fiji', iso3Code: 'FJI', iso2Code: 'FJ', datasetCode: 'fj-address-ed', searchType: 'singleline, validate'}, - {country: 'Fiji', iso3Code: 'FJI', iso2Code: 'FJ', datasetCode: 'fj-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Finland', iso3Code: 'FIN', iso2Code: 'FI', datasetCode: 'fi-address', searchType: 'singleline, typedown'}, - {country: 'Finland', iso3Code: 'FIN', iso2Code: 'FI', datasetCode: 'fi-address-ed', searchType: 'validate'}, - {country: 'Finland', iso3Code: 'FIN', iso2Code: 'FI', datasetCode: 'fi-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'France Street Level', iso3Code: 'FRA', iso2Code: 'FR', datasetCode: 'fr-address-streetlevel', searchType: 'singleline, typedown, validate'}, - {country: 'France Sub-Premises Level', iso3Code: 'FRA', iso2Code: 'FR', datasetCode: 'fr-additional-hexaline3', searchType: 'autocomplete, singleline, typedown'}, - {country: 'France Premises Level', iso3Code: 'FRA', iso2Code: 'FR', datasetCode: 'fr-address', searchType: 'singleline, typedown, validate'}, - {country: 'French Guiana', iso3Code: 'GUF', iso2Code: 'GF', datasetCode: 'gf-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'French Polynesia', iso3Code: 'PYF', iso2Code: 'PF', datasetCode: 'pf-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Gabon', iso3Code: 'GAB', iso2Code: 'GA', datasetCode: 'ga-address-ed', searchType: 'singleline, validate'}, - {country: 'Gabon', iso3Code: 'GAB', iso2Code: 'GA', datasetCode: 'ga-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Gambia', iso3Code: 'GMB', iso2Code: 'GM', datasetCode: 'gm-address-ed', searchType: 'singleline, validate'}, - {country: 'Gambia', iso3Code: 'GMB', iso2Code: 'GM', datasetCode: 'gm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Georgia', iso3Code: 'GEO', iso2Code: 'GE', datasetCode: 'ge-address-ed', searchType: 'singleline, validate'}, - {country: 'Georgia', iso3Code: 'GEO', iso2Code: 'GE', datasetCode: 'ge-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Germany', iso3Code: 'DEU', iso2Code: 'DE', datasetCode: 'de-address', searchType: 'singleline, typedown, validate'}, - {country: 'Germany', iso3Code: 'DEU', iso2Code: 'DE', datasetCode: 'de-address-ed', searchType: 'validate'}, - {country: 'Germany', iso3Code: 'DEU', iso2Code: 'DE', datasetCode: 'de-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Ghana', iso3Code: 'GHA', iso2Code: 'GH', datasetCode: 'gh-address-ed', searchType: 'singleline, validate'}, - {country: 'Ghana', iso3Code: 'GHA', iso2Code: 'GH', datasetCode: 'gh-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Gibraltar', iso3Code: 'GIB', iso2Code: 'GI', datasetCode: 'gi-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Greece', iso3Code: 'GRC', iso2Code: 'GR', datasetCode: 'gr-address-ed', searchType: 'singleline, validate'}, - {country: 'Greece', iso3Code: 'GRC', iso2Code: 'GR', datasetCode: 'gr-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Greenland', iso3Code: 'GRL', iso2Code: 'GL', datasetCode: 'gl-address-ed', searchType: 'singleline, validate'}, - {country: 'Greenland', iso3Code: 'GRL', iso2Code: 'GL', datasetCode: 'gl-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Grenada', iso3Code: 'GRD', iso2Code: 'GD', datasetCode: 'gd-address-ed', searchType: 'singleline, validate'}, - {country: 'Grenada', iso3Code: 'GRD', iso2Code: 'GD', datasetCode: 'gd-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Guadeloupe', iso3Code: 'GLP', iso2Code: 'GP', datasetCode: 'gp-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Guam', iso3Code: 'GUM', iso2Code: 'GU', datasetCode: 'gu-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Guatemala', iso3Code: 'GTM', iso2Code: 'GT', datasetCode: 'gt-address-ed', searchType: 'singleline, validate'}, - {country: 'Guatemala', iso3Code: 'GTM', iso2Code: 'GT', datasetCode: 'gt-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Guinea', iso3Code: 'GIN', iso2Code: 'GN', datasetCode: 'gn-address-ed', searchType: 'singleline, validate'}, - {country: 'Guinea', iso3Code: 'GIN', iso2Code: 'GN', datasetCode: 'gn-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Guinea-Bissau', iso3Code: 'GNB', iso2Code: 'GW', datasetCode: 'gw-address-ed', searchType: 'singleline, validate'}, - {country: 'Guinea-Bissau', iso3Code: 'GNB', iso2Code: 'GW', datasetCode: 'gw-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Guyana', iso3Code: 'GUY', iso2Code: 'GY', datasetCode: 'gy-address-ed', searchType: 'singleline, validate'}, - {country: 'Guyana', iso3Code: 'GUY', iso2Code: 'GY', datasetCode: 'gy-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Haiti', iso3Code: 'HTI', iso2Code: 'HT', datasetCode: 'ht-address-ed', searchType: 'singleline, validate'}, - {country: 'Haiti', iso3Code: 'HTI', iso2Code: 'HT', datasetCode: 'ht-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Honduras', iso3Code: 'HND', iso2Code: 'HN', datasetCode: 'hn-address-ed', searchType: 'singleline, validate'}, - {country: 'Honduras', iso3Code: 'HND', iso2Code: 'HN', datasetCode: 'hn-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Hong Kong', iso3Code: 'HKG', iso2Code: 'HK', datasetCode: 'hk-address-ed', searchType: 'singleline, validate'}, - {country: 'Hong Kong', iso3Code: 'HKG', iso2Code: 'HK', datasetCode: 'hk-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Hungary', iso3Code: 'HUN', iso2Code: 'HU', datasetCode: 'hu-address-ed', searchType: 'singleline, validate'}, - {country: 'Hungary', iso3Code: 'HUN', iso2Code: 'HU', datasetCode: 'hu-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Iceland', iso3Code: 'ISL', iso2Code: 'IS', datasetCode: 'is-address-ed', searchType: 'singleline, validate'}, - {country: 'Iceland', iso3Code: 'ISL', iso2Code: 'IS', datasetCode: 'is-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'India', iso3Code: 'IND', iso2Code: 'IN', datasetCode: 'in-address-ed', searchType: 'singleline, validate'}, - {country: 'India', iso3Code: 'IND', iso2Code: 'IN', datasetCode: 'in-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Indonesia', iso3Code: 'IDN', iso2Code: 'ID', datasetCode: 'id-address-ed', searchType: 'singleline, validate'}, - {country: 'Indonesia', iso3Code: 'IDN', iso2Code: 'ID', datasetCode: 'id-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Iran, Islamic Republic of', iso3Code: 'IRN', iso2Code: 'IR', datasetCode: 'ir-address-ed', searchType: 'singleline, validate'}, - {country: 'Iran, Islamic Republic of', iso3Code: 'IRN', iso2Code: 'IR', datasetCode: 'ir-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Iraq', iso3Code: 'IRQ', iso2Code: 'IQ', datasetCode: 'iq-address-ed', searchType: 'singleline, validate'}, - {country: 'Iraq', iso3Code: 'IRQ', iso2Code: 'IQ', datasetCode: 'iq-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Ireland', iso3Code: 'IRL', iso2Code: 'IE', datasetCode: 'ie-address', searchType: 'singleline, typedown'}, - {country: 'Ireland', iso3Code: 'IRL', iso2Code: 'IE', datasetCode: 'ie-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Ireland Eircode', iso3Code: 'IRL', iso2Code: 'IE', datasetCode: 'ie-additional-eircode', searchType: 'autocomplete, lookupv2'}, - {country: 'Ireland ECAD', iso3Code: 'IRL', iso2Code: 'IE', datasetCode: 'ie-address-ecad', searchType: 'autocomplete, lookupv2, singleline, typedown'}, - {country: 'Israel', iso3Code: 'ISR', iso2Code: 'IL', datasetCode: 'il-address-ed', searchType: 'singleline, validate'}, - {country: 'Israel', iso3Code: 'ISR', iso2Code: 'IL', datasetCode: 'il-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Italy', iso3Code: 'ITA', iso2Code: 'IT', datasetCode: 'it-address-ed', searchType: 'singleline, validate'}, - {country: 'Italy', iso3Code: 'ITA', iso2Code: 'IT', datasetCode: 'it-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Jamaica', iso3Code: 'JAM', iso2Code: 'JM', datasetCode: 'jm-address-ed', searchType: 'singleline, validate'}, - {country: 'Jamaica', iso3Code: 'JAM', iso2Code: 'JM', datasetCode: 'jm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Japan', iso3Code: 'JPN', iso2Code: 'JP', datasetCode: 'jp-address-ed', searchType: 'singleline, validate'}, - {country: 'Japan', iso3Code: 'JPN', iso2Code: 'JP', datasetCode: 'jp-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Jordan', iso3Code: 'JOR', iso2Code: 'JO', datasetCode: 'jo-address-ed', searchType: 'singleline, validate'}, - {country: 'Jordan', iso3Code: 'JOR', iso2Code: 'JO', datasetCode: 'jo-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Kazakhstan', iso3Code: 'KAZ', iso2Code: 'KZ', datasetCode: 'kz-address-ed', searchType: 'singleline, validate'}, - {country: 'Kazakhstan', iso3Code: 'KAZ', iso2Code: 'KZ', datasetCode: 'kz-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Kenya', iso3Code: 'KEN', iso2Code: 'KE', datasetCode: 'ke-address-ed', searchType: 'singleline, validate'}, - {country: 'Kenya', iso3Code: 'KEN', iso2Code: 'KE', datasetCode: 'ke-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Kiribati', iso3Code: 'KIR', iso2Code: 'KI', datasetCode: 'ki-address-ed', searchType: 'singleline, validate'}, - {country: 'Kiribati', iso3Code: 'KIR', iso2Code: 'KI', datasetCode: 'ki-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Korea, Democratic People\'s Republic of', iso3Code: 'PRK', iso2Code: 'KP', datasetCode: 'kp-address-ed', searchType: 'singleline, validate'}, - {country: 'Korea, Democratic People\'s Republic of', iso3Code: 'PRK', iso2Code: 'KP', datasetCode: 'kp-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Korea, Republic of', iso3Code: 'KOR', iso2Code: 'KR', datasetCode: 'kr-address-ed', searchType: 'singleline, validate'}, - {country: 'Korea, Republic of', iso3Code: 'KOR', iso2Code: 'KR', datasetCode: 'kr-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Kosovo', iso3Code: 'KOS', iso2Code: 'XK', datasetCode: 'kv-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Kuwait', iso3Code: 'KWT', iso2Code: 'KW', datasetCode: 'kw-address-ed', searchType: 'singleline, validate'}, - {country: 'Kuwait', iso3Code: 'KWT', iso2Code: 'KW', datasetCode: 'kw-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Kyrgyzstan', iso3Code: 'KGZ', iso2Code: 'KG', datasetCode: 'kg-address-ed', searchType: 'singleline, validate'}, - {country: 'Kyrgyzstan', iso3Code: 'KGZ', iso2Code: 'KG', datasetCode: 'kg-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Laos', iso3Code: 'LAO', iso2Code: 'LA', datasetCode: 'la-address-ed', searchType: 'singleline, validate'}, - {country: 'Laos', iso3Code: 'LAO', iso2Code: 'LA', datasetCode: 'la-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Latvia', iso3Code: 'LVA', iso2Code: 'LV', datasetCode: 'lv-address-ed', searchType: 'singleline, validate'}, - {country: 'Latvia', iso3Code: 'LVA', iso2Code: 'LV', datasetCode: 'lv-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Lebanon', iso3Code: 'LBN', iso2Code: 'LB', datasetCode: 'lb-address-ed', searchType: 'singleline, validate'}, - {country: 'Lebanon', iso3Code: 'LBN', iso2Code: 'LB', datasetCode: 'lb-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Lesotho', iso3Code: 'LSO', iso2Code: 'LS', datasetCode: 'ls-address-ed', searchType: 'singleline, validate'}, - {country: 'Lesotho', iso3Code: 'LSO', iso2Code: 'LS', datasetCode: 'ls-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Liberia', iso3Code: 'LBR', iso2Code: 'LR', datasetCode: 'lr-address-ed', searchType: 'singleline, validate'}, - {country: 'Liberia', iso3Code: 'LBR', iso2Code: 'LR', datasetCode: 'lr-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Libya', iso3Code: 'LBY', iso2Code: 'LY', datasetCode: 'ly-address-ed', searchType: 'singleline, validate'}, - {country: 'Libya', iso3Code: 'LBY', iso2Code: 'LY', datasetCode: 'ly-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Liechtenstein', iso3Code: 'LIE', iso2Code: 'LI', datasetCode: 'li-address-ed', searchType: 'singleline, validate'}, - {country: 'Liechtenstein', iso3Code: 'LIE', iso2Code: 'LI', datasetCode: 'li-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Lithuania', iso3Code: 'LTU', iso2Code: 'LT', datasetCode: 'lt-address-ed', searchType: 'singleline, validate'}, - {country: 'Lithuania', iso3Code: 'LTU', iso2Code: 'LT', datasetCode: 'lt-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Luxembourg', iso3Code: 'LUX', iso2Code: 'LU', datasetCode: 'lu-address', searchType: 'singleline, typedown, validate'}, - {country: 'Luxembourg', iso3Code: 'LUX', iso2Code: 'LU', datasetCode: 'lu-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Macau', iso3Code: 'MAC', iso2Code: 'MO', datasetCode: 'lv-address-ed', searchType: 'singleline, validate'}, - {country: 'Macau', iso3Code: 'MAC', iso2Code: 'MO', datasetCode: 'lv-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Madagascar', iso3Code: 'MDG', iso2Code: 'MG', datasetCode: 'mo-address-ed', searchType: 'singleline, validate'}, - {country: 'Madagascar', iso3Code: 'MDG', iso2Code: 'MG', datasetCode: 'mo-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Malawi', iso3Code: 'MWI', iso2Code: 'MW', datasetCode: 'mw-address-ed', searchType: 'singleline, validate'}, - {country: 'Malawi', iso3Code: 'MWI', iso2Code: 'MW', datasetCode: 'mw-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Malaysia', iso3Code: 'MYS', iso2Code: 'MY', datasetCode: 'my-address-ed', searchType: 'singleline, validate'}, - {country: 'Malaysia', iso3Code: 'MYS', iso2Code: 'MY', datasetCode: 'my-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Maldives', iso3Code: 'MDV', iso2Code: 'MV', datasetCode: 'mv-address-ed', searchType: 'singleline, validate'}, - {country: 'Maldives', iso3Code: 'MDV', iso2Code: 'MV', datasetCode: 'mv-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Mali', iso3Code: 'MLI', iso2Code: 'ML', datasetCode: 'ml-address-ed', searchType: 'singleline, validate'}, - {country: 'Mali', iso3Code: 'MLI', iso2Code: 'ML', datasetCode: 'ml-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Malta', iso3Code: 'MLT', iso2Code: 'MT', datasetCode: 'mt-address-ed', searchType: 'singleline, validate'}, - {country: 'Malta', iso3Code: 'MLT', iso2Code: 'MT', datasetCode: 'mt-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Marshall Islands', iso3Code: 'MHL', iso2Code: 'MH', datasetCode: 'mh-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Martinique', iso3Code: 'MTQ', iso2Code: 'MQ', datasetCode: 'mq-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Mauritania', iso3Code: 'MRT', iso2Code: 'MR', datasetCode: 'mr-address-ed', searchType: 'singleline, validate'}, - {country: 'Mauritania', iso3Code: 'MRT', iso2Code: 'MR', datasetCode: 'mr-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Mauritius', iso3Code: 'MUS', iso2Code: 'MU', datasetCode: 'mu-address-ed', searchType: 'singleline, validate'}, - {country: 'Mauritius', iso3Code: 'MUS', iso2Code: 'MU', datasetCode: 'mu-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Mayotte', iso3Code: 'MYT', iso2Code: 'YT', datasetCode: 'yt-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Mexico', iso3Code: 'MEX', iso2Code: 'MX', datasetCode: 'mx-address-ed', searchType: 'singleline, validate'}, - {country: 'Mexico', iso3Code: 'MEX', iso2Code: 'MX', datasetCode: 'mx-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Micronesia, Federated States of', iso3Code: 'FSM', iso2Code: 'FM', datasetCode: 'fm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Moldova', iso3Code: 'MDA', iso2Code: 'MD', datasetCode: 'md-address-ed', searchType: 'singleline, validate'}, - {country: 'Moldova', iso3Code: 'MDA', iso2Code: 'MD', datasetCode: 'md-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Monaco', iso3Code: 'MCO', iso2Code: 'MC', datasetCode: 'mc-address-ed', searchType: 'singleline, validate'}, - {country: 'Monaco', iso3Code: 'MCO', iso2Code: 'MC', datasetCode: 'mc-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Mongolia', iso3Code: 'MNG', iso2Code: 'MN', datasetCode: 'mn-address-ed', searchType: 'singleline, validate'}, - {country: 'Mongolia', iso3Code: 'MNG', iso2Code: 'MN', datasetCode: 'mn-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Montenegro', iso3Code: 'MNE', iso2Code: 'ME', datasetCode: 'me-address-ed', searchType: 'singleline, validate'}, - {country: 'Montenegro', iso3Code: 'MNE', iso2Code: 'ME', datasetCode: 'me-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Montserrat', iso3Code: 'MSR', iso2Code: 'MS', datasetCode: 'ms-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Morocco', iso3Code: 'MAR', iso2Code: 'MA', datasetCode: 'ma-address-ed', searchType: 'singleline, validate'}, - {country: 'Morocco', iso3Code: 'MAR', iso2Code: 'MA', datasetCode: 'ma-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Mozambique', iso3Code: 'MOZ', iso2Code: 'MZ', datasetCode: 'mz-address-ed', searchType: 'singleline, validate'}, - {country: 'Mozambique', iso3Code: 'MOZ', iso2Code: 'MZ', datasetCode: 'mz-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Myanmar', iso3Code: 'MMR', iso2Code: 'MM', datasetCode: 'mm-address-ed', searchType: 'singleline, validate'}, - {country: 'Myanmar', iso3Code: 'MMR', iso2Code: 'MM', datasetCode: 'mm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Namibia', iso3Code: 'NAM', iso2Code: 'NA', datasetCode: 'na-address-ed', searchType: 'singleline, validate'}, - {country: 'Namibia', iso3Code: 'NAM', iso2Code: 'NA', datasetCode: 'na-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Nauru', iso3Code: 'NRU', iso2Code: 'NR', datasetCode: 'nr-address-ed', searchType: 'singleline, validate'}, - {country: 'Nauru', iso3Code: 'NRU', iso2Code: 'NR', datasetCode: 'nr-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Nepal', iso3Code: 'NPL', iso2Code: 'NP', datasetCode: 'np-address-ed', searchType: 'singleline, validate'}, - {country: 'Nepal', iso3Code: 'NPL', iso2Code: 'NP', datasetCode: 'np-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Netherlands', iso3Code: 'NLD', iso2Code: 'NL', datasetCode: 'nl-address', searchType: 'singleline, typedown, validate'}, - {country: 'Netherlands', iso3Code: 'NLD', iso2Code: 'NL', datasetCode: 'nl-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'New Caledonia', iso3Code: 'NCL', iso2Code: 'NC', datasetCode: 'nc-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'New Zealand DataFusion', iso3Code: 'NZL', iso2Code: 'NZ', datasetCode: 'nz-additional-datafusion', searchType: 'autocomplete, singleline, typedown, validate, lookupv2'}, - {country: 'New Zealand Postal Address', iso3Code: 'NZL', iso2Code: 'NZ', datasetCode: 'nz-address', searchType: 'autocomplete, singleline, typedown, validate, lookupv2'}, - {country: 'Nicaragua', iso3Code: 'NIC', iso2Code: 'NI', datasetCode: 'ni-address-ed', searchType: 'singleline, validate'}, - {country: 'Nicaragua', iso3Code: 'NIC', iso2Code: 'NI', datasetCode: 'ni-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Niger', iso3Code: 'NER', iso2Code: 'NE', datasetCode: 'ne-address-ed', searchType: 'singleline, validate'}, - {country: 'Niger', iso3Code: 'NER', iso2Code: 'NE', datasetCode: 'ne-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Nigeria', iso3Code: 'NGA', iso2Code: 'NG', datasetCode: 'ng-address-ed', searchType: 'singleline, validate'}, - {country: 'Nigeria', iso3Code: 'NGA', iso2Code: 'NG', datasetCode: 'ng-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Niue', iso3Code: 'NIU', iso2Code: 'NU', datasetCode: 'nu-address-ed', searchType: 'singleline, validate'}, - {country: 'Niue', iso3Code: 'NIU', iso2Code: 'NU', datasetCode: 'nu-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Norfolk Island', iso3Code: 'NFK', iso2Code: 'NF', datasetCode: 'nf-address-ed', searchType: 'singleline, validate'}, - {country: 'Norfolk Island', iso3Code: 'NFK', iso2Code: 'NF', datasetCode: 'nf-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'North Macedonia', iso3Code: 'MKD', iso2Code: 'MK', datasetCode: 'mk-address-ed', searchType: 'singleline, validate'}, - {country: 'North Macedonia', iso3Code: 'MKD', iso2Code: 'MK', datasetCode: 'mk-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Northern Mariana Islands', iso3Code: 'MNP', iso2Code: 'MP', datasetCode: 'mp-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Norway', iso3Code: 'NOR', iso2Code: 'NO', datasetCode: 'no-address', searchType: 'singleline, typedown'}, - {country: 'Norway', iso3Code: 'NOR', iso2Code: 'NO', datasetCode: 'no-address-ed', searchType: 'validate'}, - {country: 'Norway', iso3Code: 'NOR', iso2Code: 'NO', datasetCode: 'no-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Oman', iso3Code: 'OMN', iso2Code: 'OM', datasetCode: 'om-address-ed', searchType: 'singleline, validate'}, - {country: 'Oman', iso3Code: 'OMN', iso2Code: 'OM', datasetCode: 'om-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Pakistan', iso3Code: 'PAK', iso2Code: 'PK', datasetCode: 'pk-address-ed', searchType: 'singleline, validate'}, - {country: 'Pakistan', iso3Code: 'PAK', iso2Code: 'PK', datasetCode: 'pk-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Palau', iso3Code: 'PLW', iso2Code: 'PW', datasetCode: 'pw-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Palestine', iso3Code: 'PSE', iso2Code: 'PS', datasetCode: 'ps-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Panama', iso3Code: 'PAN', iso2Code: 'PA', datasetCode: 'pa-address-ed', searchType: 'singleline, validate'}, - {country: 'Panama', iso3Code: 'PAN', iso2Code: 'PA', datasetCode: 'pa-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Papua New Guinea', iso3Code: 'PNG', iso2Code: 'PG', datasetCode: 'pg-address-ed', searchType: 'singleline, validate'}, - {country: 'Papua New Guinea', iso3Code: 'PNG', iso2Code: 'PG', datasetCode: 'pg-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Paraguay', iso3Code: 'PRY', iso2Code: 'PY', datasetCode: 'py-address-ed', searchType: 'singleline, validate'}, - {country: 'Paraguay', iso3Code: 'PRY', iso2Code: 'PY', datasetCode: 'py-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Peru', iso3Code: 'PER', iso2Code: 'PE', datasetCode: 'pe-address-ed', searchType: 'singleline, validate'}, - {country: 'Peru', iso3Code: 'PER', iso2Code: 'PE', datasetCode: 'pe-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Philippines', iso3Code: 'PHL', iso2Code: 'PH', datasetCode: 'ph-address-ed', searchType: 'singleline, validate'}, - {country: 'Philippines', iso3Code: 'PHL', iso2Code: 'PH', datasetCode: 'ph-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Pitcairn Islands', iso3Code: 'PCN', iso2Code: 'PN', datasetCode: 'pn-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Poland', iso3Code: 'POL', iso2Code: 'PL', datasetCode: 'pl-address-ed', searchType: 'singleline, validate'}, - {country: 'Poland', iso3Code: 'POL', iso2Code: 'PL', datasetCode: 'pl-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Portugal', iso3Code: 'PRT', iso2Code: 'PT', datasetCode: 'pt-address-ed', searchType: 'singleline, validate'}, - {country: 'Portugal', iso3Code: 'PRT', iso2Code: 'PT', datasetCode: 'pt-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Qatar', iso3Code: 'QAT', iso2Code: 'QA', datasetCode: 'qa-address-ed', searchType: 'singleline, validate'}, - {country: 'Qatar', iso3Code: 'QAT', iso2Code: 'QA', datasetCode: 'qa-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Romania', iso3Code: 'ROU', iso2Code: 'RO', datasetCode: 'ro-address-ed', searchType: 'singleline, validate'}, - {country: 'Romania', iso3Code: 'ROU', iso2Code: 'RO', datasetCode: 'ro-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Russian Federation', iso3Code: 'RUS', iso2Code: 'RU', datasetCode: 'ru-address-ed', searchType: 'singleline, validate'}, - {country: 'Russian Federation', iso3Code: 'RUS', iso2Code: 'RU', datasetCode: 'ru-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Rwanda', iso3Code: 'RWA', iso2Code: 'RW', datasetCode: 'rw-address-ed', searchType: 'singleline, validate'}, - {country: 'Rwanda', iso3Code: 'RWA', iso2Code: 'RW', datasetCode: 'rw-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Réunion', iso3Code: 'REU', iso2Code: 'RE', datasetCode: 're-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Saint Barthélemy', iso3Code: 'BLM', iso2Code: 'BL', datasetCode: 'bl-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Saint Helena', iso3Code: 'SHN', iso2Code: 'SH', datasetCode: 'sh-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Saint Kitts and Nevis', iso3Code: 'KNA', iso2Code: 'KN', datasetCode: 'kn-address-ed', searchType: 'singleline, validate'}, - {country: 'Saint Kitts and Nevis', iso3Code: 'KNA', iso2Code: 'KN', datasetCode: 'kn-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Saint Lucia', iso3Code: 'LCA', iso2Code: 'LC', datasetCode: 'lc-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Saint Martin', iso3Code: 'MAF', iso2Code: 'MF', datasetCode: 'mf-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Saint Pierre and Miquelon', iso3Code: 'SPM', iso2Code: 'PM', datasetCode: 'pm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Saint Vincent and the Grenadines', iso3Code: 'VCT', iso2Code: 'VC', datasetCode: 'vc-address-ed', searchType: 'singleline, validate'}, - {country: 'Saint Vincent and the Grenadines', iso3Code: 'VCT', iso2Code: 'VC', datasetCode: 'vc-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Samoa', iso3Code: 'WSM', iso2Code: 'WS', datasetCode: 'ws-address-ed', searchType: 'singleline, validate'}, - {country: 'Samoa', iso3Code: 'WSM', iso2Code: 'WS', datasetCode: 'ws-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'San Marino', iso3Code: 'SMR', iso2Code: 'SM', datasetCode: 'sm-address-ed', searchType: 'singleline, validate'}, - {country: 'San Marino', iso3Code: 'SMR', iso2Code: 'SM', datasetCode: 'sm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Sao Tome and Principe', iso3Code: 'STP', iso2Code: 'ST', datasetCode: 'st-address-ed', searchType: 'singleline, validate'}, - {country: 'Sao Tome and Principe', iso3Code: 'STP', iso2Code: 'ST', datasetCode: 'st-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Saudi Arabia', iso3Code: 'SAU', iso2Code: 'SA', datasetCode: 'sa-address-ed', searchType: 'singleline, validate'}, - {country: 'Saudi Arabia', iso3Code: 'SAU', iso2Code: 'SA', datasetCode: 'sa-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Senegal', iso3Code: 'SEN', iso2Code: 'SN', datasetCode: 'sn-address-ed', searchType: 'singleline, validate'}, - {country: 'Senegal', iso3Code: 'SEN', iso2Code: 'SN', datasetCode: 'sn-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Serbia', iso3Code: 'SRB', iso2Code: 'RS', datasetCode: 'rs-address-ed', searchType: 'singleline, validate'}, - {country: 'Serbia', iso3Code: 'SRB', iso2Code: 'RS', datasetCode: 'rs-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Seychelles', iso3Code: 'SYC', iso2Code: 'SC', datasetCode: 'sc-address-ed', searchType: 'singleline, validate'}, - {country: 'Seychelles', iso3Code: 'SYC', iso2Code: 'SC', datasetCode: 'sc-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Sierra Leone', iso3Code: 'SLE', iso2Code: 'SL', datasetCode: 'sl-address-ed', searchType: 'singleline, validate'}, - {country: 'Sierra Leone', iso3Code: 'SLE', iso2Code: 'SL', datasetCode: 'sl-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Singapore', iso3Code: 'SGP', iso2Code: 'SG', datasetCode: 'sg-address', searchType: 'autocomplete, singleline, typedown, validate, lookupv2'}, - {country: 'Sint Maarten', iso3Code: 'SXM', iso2Code: 'SX', datasetCode: 'sx-address-ed', searchType: 'singleline, validate'}, - {country: 'Sint Maarten', iso3Code: 'SXM', iso2Code: 'SX', datasetCode: 'sx-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Slovakia', iso3Code: 'SVK', iso2Code: 'SK', datasetCode: 'sk-address-ed', searchType: 'singleline, validate'}, - {country: 'Slovakia', iso3Code: 'SVK', iso2Code: 'SK', datasetCode: 'sk-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Slovenia', iso3Code: 'SVN', iso2Code: 'SI', datasetCode: 'si-address-ed', searchType: 'singleline, validate'}, - {country: 'Slovenia', iso3Code: 'SVN', iso2Code: 'SI', datasetCode: 'si-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Solomon Islands', iso3Code: 'SLB', iso2Code: 'SB', datasetCode: 'sb-address-ed', searchType: 'singleline, validate'}, - {country: 'Solomon Islands', iso3Code: 'SLB', iso2Code: 'SB', datasetCode: 'sb-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Somalia', iso3Code: 'SOM', iso2Code: 'SO', datasetCode: 'so-address-ed', searchType: 'singleline, validate'}, - {country: 'Somalia', iso3Code: 'SOM', iso2Code: 'SO', datasetCode: 'so-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'South Africa', iso3Code: 'ZAF', iso2Code: 'ZA', datasetCode: 'za-address-ed', searchType: 'singleline, validate'}, - {country: 'South Africa', iso3Code: 'ZAF', iso2Code: 'ZA', datasetCode: 'za-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'South Georgia and the South Sandwich Islands', iso3Code: 'SGS', iso2Code: 'GS', datasetCode: 'gs-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'South Sudan', iso3Code: 'SSD', iso2Code: 'SS', datasetCode: 'ss-address-ed', searchType: 'singleline, validate'}, - {country: 'South Sudan', iso3Code: 'SSD', iso2Code: 'SS', datasetCode: 'ss-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Spain', iso3Code: 'ESP', iso2Code: 'ES', datasetCode: 'es-address', searchType: 'singleline, typedown'}, - {country: 'Spain', iso3Code: 'ESP', iso2Code: 'ES', datasetCode: 'es-address-ed', searchType: 'validate'}, - {country: 'Spain', iso3Code: 'ESP', iso2Code: 'ES', datasetCode: 'es-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Sri Lanka', iso3Code: 'LKA', iso2Code: 'LK', datasetCode: 'lk-address-ed', searchType: 'singleline, validate'}, - {country: 'Sudan', iso3Code: 'SDN', iso2Code: 'SD', datasetCode: 'sd-address-ed', searchType: 'singleline, validate'}, - {country: 'Sudan', iso3Code: 'SDN', iso2Code: 'SD', datasetCode: 'sd-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Suriname', iso3Code: 'SUR', iso2Code: 'SR', datasetCode: 'sr-address-ed', searchType: 'singleline, validate'}, - {country: 'Suriname', iso3Code: 'SUR', iso2Code: 'SR', datasetCode: 'sr-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Svalbard and Jan Mayen Islands', iso3Code: 'SJM', iso2Code: 'SJ', datasetCode: 'sj-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Swaziland (Eswatini)', iso3Code: 'SWZ', iso2Code: 'SZ', datasetCode: 'sz-address-ed', searchType: 'singleline, validate'}, - {country: 'Swaziland (Eswatini)', iso3Code: 'SWZ', iso2Code: 'SZ', datasetCode: 'sz-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Sweden', iso3Code: 'SWE', iso2Code: 'SE', datasetCode: 'se-address', searchType: 'singleline, typedown'}, - {country: 'Sweden', iso3Code: 'SWE', iso2Code: 'SE', datasetCode: 'se-address-ed', searchType: 'validate'}, - {country: 'Sweden', iso3Code: 'SWE', iso2Code: 'SE', datasetCode: 'se-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Switzerland', iso3Code: 'CHE', iso2Code: 'CH', datasetCode: 'ch-address', searchType: 'singleline, typedown'}, - {country: 'Switzerland', iso3Code: 'CHE', iso2Code: 'CH', datasetCode: 'ch-address-ed', searchType: 'validate'}, - {country: 'Switzerland', iso3Code: 'CHE', iso2Code: 'CH', datasetCode: 'ch-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Syria', iso3Code: 'SYR', iso2Code: 'SY', datasetCode: 'sy-address-ed', searchType: 'singleline, validate'}, - {country: 'Syria', iso3Code: 'SYR', iso2Code: 'SY', datasetCode: 'sy-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Taiwan', iso3Code: 'TWN', iso2Code: 'TW', datasetCode: 'tw-address-ed', searchType: 'singleline, validate'}, - {country: 'Taiwan', iso3Code: 'TWN', iso2Code: 'TW', datasetCode: 'tw-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Tajikistan', iso3Code: 'TJK', iso2Code: 'TJ', datasetCode: 'tj-address-ed', searchType: 'singleline, validate'}, - {country: 'Tajikistan', iso3Code: 'TJK', iso2Code: 'TJ', datasetCode: 'tj-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Tanzania', iso3Code: 'TZA', iso2Code: 'TZ', datasetCode: 'tz-address-ed', searchType: 'singleline, validate'}, - {country: 'Tanzania', iso3Code: 'TZA', iso2Code: 'TZ', datasetCode: 'tz-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Thailand', iso3Code: 'THA', iso2Code: 'TH', datasetCode: 'th-address-ed', searchType: 'singleline, validate'}, - {country: 'Thailand', iso3Code: 'THA', iso2Code: 'TH', datasetCode: 'th-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Timor-Leste', iso3Code: 'TLS', iso2Code: 'TL', datasetCode: 'tl-address-ed', searchType: 'singleline, validate'}, - {country: 'Timor-Leste', iso3Code: 'TLS', iso2Code: 'TL', datasetCode: 'tl-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Togo', iso3Code: 'TGO', iso2Code: 'TG', datasetCode: 'tg-address-ed', searchType: 'singleline, validate'}, - {country: 'Togo', iso3Code: 'TGO', iso2Code: 'TG', datasetCode: 'tg-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Tokelau', iso3Code: 'TKL', iso2Code: 'TK', datasetCode: 'tk-address-ed', searchType: 'singleline, validate'}, - {country: 'Tokelau', iso3Code: 'TKL', iso2Code: 'TK', datasetCode: 'tk-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Tonga', iso3Code: 'TON', iso2Code: 'TO', datasetCode: 'to-address-ed', searchType: 'singleline, validate'}, - {country: 'Tonga', iso3Code: 'TON', iso2Code: 'TO', datasetCode: 'to-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Trinidad and Tobago', iso3Code: 'TTO', iso2Code: 'TT', datasetCode: 'tt-address-ed', searchType: 'singleline, validate'}, - {country: 'Trinidad and Tobago', iso3Code: 'TTO', iso2Code: 'TT', datasetCode: 'tt-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Tunisia', iso3Code: 'TUN', iso2Code: 'TN', datasetCode: 'tn-address-ed', searchType: 'singleline, validate'}, - {country: 'Tunisia', iso3Code: 'TUN', iso2Code: 'TN', datasetCode: 'tn-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Turkey', iso3Code: 'TUR', iso2Code: 'TR', datasetCode: 'tr-address-ed', searchType: 'singleline, validate'}, - {country: 'Turkey', iso3Code: 'TUR', iso2Code: 'TR', datasetCode: 'tr-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Turkish Republic of Northern Cyprus', iso3Code: 'NCY', iso2Code: 'CY', datasetCode: 'ny-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Turkmenistan', iso3Code: 'TKM', iso2Code: 'TM', datasetCode: 'tm-address-ed', searchType: 'singleline, validate'}, - {country: 'Turkmenistan', iso3Code: 'TKM', iso2Code: 'TM', datasetCode: 'tm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Turks and Caicos Islands', iso3Code: 'TCA', iso2Code: 'TC', datasetCode: 'tc-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Tuvalu', iso3Code: 'TUV', iso2Code: 'TV', datasetCode: 'tv-address-ed', searchType: 'singleline, validate'}, - {country: 'Tuvalu', iso3Code: 'TUV', iso2Code: 'TV', datasetCode: 'tv-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Uganda', iso3Code: 'UGA', iso2Code: 'UG', datasetCode: 'ug-address-ed', searchType: 'singleline, validate'}, - {country: 'Uganda', iso3Code: 'UGA', iso2Code: 'UG', datasetCode: 'ug-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Ukraine', iso3Code: 'UKR', iso2Code: 'UA', datasetCode: 'ua-address-ed', searchType: 'singleline, validate'}, - {country: 'Ukraine', iso3Code: 'UKR', iso2Code: 'UA', datasetCode: 'ua-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'United Arab Emirates', iso3Code: 'ARE', iso2Code: 'AE', datasetCode: 'ae-address-ed', searchType: 'singleline, validate'}, - {country: 'United Arab Emirates', iso3Code: 'ARE', iso2Code: 'AE', datasetCode: 'ae-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'United Kingdom', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-address', searchType: 'autocomplete, singleline, typedown, validate, lookupv2'}, - {country: 'United Kingdom', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-additional-multipleresidence', searchType: 'autocomplete, singleline, typedown, validate, lookupv2'}, - {country: 'United Kingdom', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-additional-notyetbuilt', searchType: 'autocomplete, singleline, typedown, validate, lookupv2'}, - {country: 'United Kingdom AddressBase Premium', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-address-addressbase', searchType: 'singleline, typedown, validate, lookup'}, - {country: 'United Kingdom Location Essential', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-address-addressbase', searchType: 'singleline, typedown, validate, lookup'}, - {country: 'United Kingdom AddressBase Premium with Islands', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-additional-addressbaseislands', searchType: 'singleline, typedown, validate, lookup'}, - {country: 'United Kingdom Business Names', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-additional-business', searchType: 'singleline, typedown'}, - {country: 'United Kingdom Electricity', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-additional-electricity', searchType: 'autocomplete, singleline, typedown, lookupv2'}, - {country: 'United Kingdom Gas', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-additional-gas', searchType: 'autocomplete, singleline, typedown, lookupv2'}, - {country: 'United Kingdom Street Level', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-address-streetlevel', searchType: 'singleline, typedown'}, - {country: 'United Kingdom Extended Business', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-additional-businessextended', searchType: 'singleline, typedown, validate, lookup'}, - {country: 'United Kingdom Cymraeg (Welsh Language) Postal Address', iso3Code: 'GBR', iso2Code: 'GB', datasetCode: 'gb-address-wales', searchType: 'singleline, typedown, validate'}, - {country: 'United States of America', iso3Code: 'USA', iso2Code: 'US', datasetCode: 'us-address', searchType: 'autocomplete, singleline, typedown, validate, lookupv2'}, - {country: 'Uruguay', iso3Code: 'URY', iso2Code: 'UY', datasetCode: 'uy-address-ed', searchType: 'singleline, validate'}, - {country: 'Uruguay', iso3Code: 'URY', iso2Code: 'UY', datasetCode: 'uy-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Uzbekistan', iso3Code: 'UZB', iso2Code: 'UZ', datasetCode: 'uz-address-ed', searchType: 'singleline, validate'}, - {country: 'Uzbekistan', iso3Code: 'UZB', iso2Code: 'UZ', datasetCode: 'uz-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Vanuatu', iso3Code: 'VUT', iso2Code: 'VU', datasetCode: 'vu-address-ed', searchType: 'singleline, validate'}, - {country: 'Vanuatu', iso3Code: 'VUT', iso2Code: 'VU', datasetCode: 'vu-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Vatican City (Holy See)', iso3Code: 'VAT', iso2Code: 'VA', datasetCode: 'va-address-ed', searchType: 'singleline, validate'}, - {country: 'Vatican City (Holy See)', iso3Code: 'VAT', iso2Code: 'VA', datasetCode: 'va-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Venezuela', iso3Code: 'VEN', iso2Code: 'VE', datasetCode: 've-address-ed', searchType: 'singleline, validate'}, - {country: 'Venezuela', iso3Code: 'VEN', iso2Code: 'VE', datasetCode: 've-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Viet Nam', iso3Code: 'VNM', iso2Code: 'VN', datasetCode: 'vn-address-ed', searchType: 'singleline, validate'}, - {country: 'Viet Nam', iso3Code: 'VNM', iso2Code: 'VN', datasetCode: 'vn-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Virgin Islands, British', iso3Code: 'VGB', iso2Code: 'VG', datasetCode: 'vg-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Virgin Islands, U.S.', iso3Code: 'VIR', iso2Code: 'VI', datasetCode: 'vi-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Wallis and Futuna Islands', iso3Code: 'WLF', iso2Code: 'WF', datasetCode: 'wf-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Western Sahara', iso3Code: 'ESH', iso2Code: 'EH', datasetCode: 'eh-address-ed', searchType: 'singleline, validate'}, - {country: 'Western Sahara', iso3Code: 'ESH', iso2Code: 'EH', datasetCode: 'eh-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Yemen', iso3Code: 'YEM', iso2Code: 'YE', datasetCode: 'ye-address-ed', searchType: 'singleline, validate'}, - {country: 'Yemen', iso3Code: 'YEM', iso2Code: 'YE', datasetCode: 'ye-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Zambia', iso3Code: 'ZMB', iso2Code: 'ZM', datasetCode: 'zm-address-ed', searchType: 'singleline, validate'}, - {country: 'Zambia', iso3Code: 'ZMB', iso2Code: 'ZM', datasetCode: 'zm-address-eh', searchType: 'autocomplete, lookupv2'}, - {country: 'Zimbabwe', iso3Code: 'ZWE', iso2Code: 'ZW', datasetCode: 'zw-address-ed', searchType: 'singleline, validate'}, - {country: 'Zimbabwe', iso3Code: 'ZWE', iso2Code: 'ZW', datasetCode: 'zw-address-eh', searchType: 'autocomplete, lookupv2'} + {country: 'Afghanistan', iso3Code: 'AFG', iso2Code: 'AF', datasetCodes: ['af-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Afghanistan', iso3Code: 'AFG', iso2Code: 'AF', datasetCodes: ['af-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Albania', iso3Code: 'ALB', iso2Code: 'AL', datasetCodes: ['al-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Albania', iso3Code: 'ALB', iso2Code: 'AL', datasetCodes: ['al-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Algeria', iso3Code: 'DZA', iso2Code: 'DZ', datasetCodes: ['dz-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Algeria', iso3Code: 'DZA', iso2Code: 'DZ', datasetCodes: ['dz-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'American Samoa', iso3Code: 'ASM', iso2Code: 'AS', datasetCodes: ['as-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Andorra', iso3Code: 'AND', iso2Code: 'AD', datasetCodes: ['ad-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Andorra', iso3Code: 'AND', iso2Code: 'AD', datasetCodes: ['ad-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Angola', iso3Code: 'AGO', iso2Code: 'AO', datasetCodes: ['ao-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Angola', iso3Code: 'AGO', iso2Code: 'AO', datasetCodes: ['ao-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Anguilla', iso3Code: 'AIA', iso2Code: 'AI', datasetCodes: ['ai-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Antarctica', iso3Code: 'ATA', iso2Code: 'AQ', datasetCodes: ['aq-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Antigua and Barbuda', iso3Code: 'ATG', iso2Code: 'AG', datasetCodes: ['ag-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Antigua and Barbuda', iso3Code: 'ATG', iso2Code: 'AG', datasetCodes: ['ag-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Argentina', iso3Code: 'ARG', iso2Code: 'AR', datasetCodes: ['ar-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Argentina', iso3Code: 'ARG', iso2Code: 'AR', datasetCodes: ['ar-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Armenia', iso3Code: 'ARM', iso2Code: 'AM', datasetCodes: ['am-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Armenia', iso3Code: 'ARM', iso2Code: 'AM', datasetCodes: ['am-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Aruba', iso3Code: 'ABW', iso2Code: 'AW', datasetCodes: ['aw-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Aruba', iso3Code: 'ABW', iso2Code: 'AW', datasetCodes: ['aw-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Australia DataFusion', iso3Code: 'AUS', iso2Code: 'AU', datasetCodes: ['au-address-datafusion'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'lookupv2' ]}, + {country: 'Australia Geocoded National Address', iso3Code: 'AUS', iso2Code: 'AU', datasetCodes: ['au-address-gnaf'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2' ]}, + {country: 'Australia Postal Address', iso3Code: 'AUS', iso2Code: 'AU', datasetCodes: ['au-address'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2' ]}, + {country: 'Austria', iso3Code: 'AUT', iso2Code: 'AT', datasetCodes: ['at-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Austria', iso3Code: 'AUT', iso2Code: 'AT', datasetCodes: ['az-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Azerbaijan', iso3Code: 'AZE', iso2Code: 'AZ', datasetCodes: ['az-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Azerbaijan', iso3Code: 'AZE', iso2Code: 'AZ', datasetCodes: ['az-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Bahamas', iso3Code: 'BHS', iso2Code: 'BS', datasetCodes: ['bs-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Bahamas', iso3Code: 'BHS', iso2Code: 'BS', datasetCodes: ['bs-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Bahrain', iso3Code: 'BHR', iso2Code: 'BH', datasetCodes: ['bh-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Bahrain', iso3Code: 'BHR', iso2Code: 'BH', datasetCodes: ['bh-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Bangladesh', iso3Code: 'BGD', iso2Code: 'BD', datasetCodes: ['bd-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Bangladesh', iso3Code: 'BGD', iso2Code: 'BD', datasetCodes: ['bd-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Barbados', iso3Code: 'BRB', iso2Code: 'BB', datasetCodes: ['bb-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Barbados', iso3Code: 'BRB', iso2Code: 'BB', datasetCodes: ['bb-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Belarus', iso3Code: 'BLR', iso2Code: 'BY', datasetCodes: ['by-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Belarus', iso3Code: 'BLR', iso2Code: 'BY', datasetCodes: ['by-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Belgium', iso3Code: 'BEL', iso2Code: 'BE', datasetCodes: ['be-address'], searchTypes: [ 'singleline', 'typedown' ]}, + {country: 'Belgium', iso3Code: 'BEL', iso2Code: 'BE', datasetCodes: ['be-address-ed'], searchTypes: [ ' validate' ]}, + {country: 'Belgium', iso3Code: 'BEL', iso2Code: 'BE', datasetCodes: ['be-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Belize', iso3Code: 'BLZ', iso2Code: 'BZ', datasetCodes: ['bz-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Belize', iso3Code: 'BLZ', iso2Code: 'BZ', datasetCodes: ['bz-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Benin', iso3Code: 'BEN', iso2Code: 'BJ', datasetCodes: ['bj-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Benin', iso3Code: 'BEN', iso2Code: 'BJ', datasetCodes: ['bj-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Bermuda', iso3Code: 'BMU', iso2Code: 'BM', datasetCodes: ['bm-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Bermuda', iso3Code: 'BMU', iso2Code: 'BM', datasetCodes: ['bm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Bhutan', iso3Code: 'BTN', iso2Code: 'BT', datasetCodes: ['bt-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Bhutan', iso3Code: 'BTN', iso2Code: 'BT', datasetCodes: ['bt-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Bolivia', iso3Code: 'BOL', iso2Code: 'BO', datasetCodes: ['bo-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Bolivia', iso3Code: 'BOL', iso2Code: 'BO', datasetCodes: ['bo-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Bonaire, Sint Eustatius and Saba', iso3Code: 'BES', iso2Code: 'BQ', datasetCodes: ['bq-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Bonaire, Sint Eustatius and Saba', iso3Code: 'BES', iso2Code: 'BQ', datasetCodes: ['bq-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Bosnia and Herzegovina', iso3Code: 'BIH', iso2Code: 'BA', datasetCodes: ['ba-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Bosnia and Herzegovina', iso3Code: 'BIH', iso2Code: 'BA', datasetCodes: ['ba-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Botswana', iso3Code: 'BWA', iso2Code: 'BW', datasetCodes: ['bw-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Botswana', iso3Code: 'BWA', iso2Code: 'BW', datasetCodes: ['bw-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Brazil', iso3Code: 'BRA', iso2Code: 'BR', datasetCodes: ['br-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Brazil', iso3Code: 'BRA', iso2Code: 'BR', datasetCodes: ['br-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Brunei Darussalam', iso3Code: 'BRN', iso2Code: 'BN', datasetCodes: ['bn-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Brunei Darussalam', iso3Code: 'BRN', iso2Code: 'BN', datasetCodes: ['bn-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Bulgaria', iso3Code: 'BGR', iso2Code: 'BG', datasetCodes: ['bg-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Bulgaria', iso3Code: 'BGR', iso2Code: 'BG', datasetCodes: ['bg-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Burkina Faso', iso3Code: 'BFA', iso2Code: 'BF', datasetCodes: ['bf-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Burkina Faso', iso3Code: 'BFA', iso2Code: 'BF', datasetCodes: ['bf-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Burundi', iso3Code: 'BDI', iso2Code: 'BI', datasetCodes: ['bi-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Cambodia', iso3Code: 'KHM', iso2Code: 'KH', datasetCodes: ['kh-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Cambodia', iso3Code: 'KHM', iso2Code: 'KH', datasetCodes: ['kh-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Cameroon', iso3Code: 'CMR', iso2Code: 'CM', datasetCodes: ['cm-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Cameroon', iso3Code: 'CMR', iso2Code: 'CM', datasetCodes: ['cm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Canada', iso3Code: 'CAN', iso2Code: 'CA', datasetCodes: ['ca-address'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2' ]}, + {country: 'Cape Verde', iso3Code: 'CPV', iso2Code: 'CV', datasetCodes: ['cv-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Cape Verde', iso3Code: 'CPV', iso2Code: 'CV', datasetCodes: ['cv-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Cayman Islands', iso3Code: 'CYM', iso2Code: 'KY', datasetCodes: ['ky-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Cayman Islands', iso3Code: 'CYM', iso2Code: 'KY', datasetCodes: ['ky-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Central African Republic', iso3Code: 'CAF', iso2Code: 'CF', datasetCodes: ['cf-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Central African Republic', iso3Code: 'CAF', iso2Code: 'CF', datasetCodes: ['cf-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Chad', iso3Code: 'TCD', iso2Code: 'TD', datasetCodes: ['td-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Chad', iso3Code: 'TCD', iso2Code: 'TD', datasetCodes: ['td-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Chile', iso3Code: 'CHL', iso2Code: 'CL', datasetCodes: ['cl-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Chile', iso3Code: 'CHL', iso2Code: 'CL', datasetCodes: ['cl-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'China', iso3Code: 'CHN', iso2Code: 'CN', datasetCodes: ['cn-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'China', iso3Code: 'CHN', iso2Code: 'CN', datasetCodes: ['cn-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Christmas Island', iso3Code: 'CXR', iso2Code: 'CX', datasetCodes: ['cx-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Cocos Island', iso3Code: 'CCK', iso2Code: 'CC', datasetCodes: ['cc-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Colombia', iso3Code: 'COL', iso2Code: 'CO', datasetCodes: ['co-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Colombia', iso3Code: 'COL', iso2Code: 'CO', datasetCodes: ['co-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Comoros', iso3Code: 'COM', iso2Code: 'KM', datasetCodes: ['km-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Comoros', iso3Code: 'COM', iso2Code: 'KM', datasetCodes: ['km-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Congo', iso3Code: 'COG', iso2Code: 'CG', datasetCodes: ['cg-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Congo', iso3Code: 'COG', iso2Code: 'CG', datasetCodes: ['cg-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Congo, The Democratic Republic of the', iso3Code: 'COD', iso2Code: 'CD', datasetCodes: ['cd-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Congo, The Democratic Republic of the', iso3Code: 'COD', iso2Code: 'CD', datasetCodes: ['cd-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Cook Islands', iso3Code: 'COK', iso2Code: 'CK', datasetCodes: ['ck-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Cook Islands', iso3Code: 'COK', iso2Code: 'CK', datasetCodes: ['ck-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Costa Rica', iso3Code: 'CRI', iso2Code: 'CR', datasetCodes: ['cr-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Costa Rica', iso3Code: 'CRI', iso2Code: 'CR', datasetCodes: ['cr-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Croatia', iso3Code: 'HRV', iso2Code: 'HR', datasetCodes: ['hr-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Croatia', iso3Code: 'HRV', iso2Code: 'HR', datasetCodes: ['hr-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Cuba', iso3Code: 'CUB', iso2Code: 'CU', datasetCodes: ['cu-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Cuba', iso3Code: 'CUB', iso2Code: 'CU', datasetCodes: ['cu-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Curaçao', iso3Code: 'CUW', iso2Code: 'CW', datasetCodes: ['cw-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Curaçao', iso3Code: 'CUW', iso2Code: 'CW', datasetCodes: ['cw-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Cyprus', iso3Code: 'CYP', iso2Code: 'CY', datasetCodes: ['cy-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Cyprus', iso3Code: 'CYP', iso2Code: 'CY', datasetCodes: ['cy-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Czech Republic', iso3Code: 'CZE', iso2Code: 'CZ', datasetCodes: ['cz-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Czech Republic', iso3Code: 'CZE', iso2Code: 'CZ', datasetCodes: ['cz-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Côte d\'Ivoire', iso3Code: 'CIV', iso2Code: 'CI', datasetCodes: ['ci-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Côte d\'Ivoire', iso3Code: 'CIV', iso2Code: 'CI', datasetCodes: ['ci-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Denmark', iso3Code: 'DNK', iso2Code: 'DK', datasetCodes: ['dk-address'], searchTypes: [ 'singleline', 'typedown', 'validate' ]}, + {country: 'Denmark', iso3Code: 'DNK', iso2Code: 'DK', datasetCodes: ['dk-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Djibouti', iso3Code: 'DJI', iso2Code: 'DJ', datasetCodes: ['dj-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Djibouti', iso3Code: 'DJI', iso2Code: 'DJ', datasetCodes: ['dj-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Dominica', iso3Code: 'DMA', iso2Code: 'DM', datasetCodes: ['dm-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Dominica', iso3Code: 'DMA', iso2Code: 'DM', datasetCodes: ['dm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Dominican Republic', iso3Code: 'DOM', iso2Code: 'DO', datasetCodes: ['do-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Dominican Republic', iso3Code: 'DOM', iso2Code: 'DO', datasetCodes: ['do-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Ecuador', iso3Code: 'ECU', iso2Code: 'EC', datasetCodes: ['ec-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Ecuador', iso3Code: 'ECU', iso2Code: 'EC', datasetCodes: ['ec-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Egypt', iso3Code: 'EGY', iso2Code: 'EG', datasetCodes: ['eg-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Egypt', iso3Code: 'EGY', iso2Code: 'EG', datasetCodes: ['eg-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'El Salvador', iso3Code: 'SLV', iso2Code: 'SV', datasetCodes: ['sv-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'El Salvador', iso3Code: 'SLV', iso2Code: 'SV', datasetCodes: ['sv-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Equatorial Guinea', iso3Code: 'GNQ', iso2Code: 'GQ', datasetCodes: ['gq-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Equatorial Guinea', iso3Code: 'GNQ', iso2Code: 'GQ', datasetCodes: ['gq-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Eritrea', iso3Code: 'ERI', iso2Code: 'ER', datasetCodes: ['er-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Eritrea', iso3Code: 'ERI', iso2Code: 'ER', datasetCodes: ['er-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Estonia', iso3Code: 'EST', iso2Code: 'EE', datasetCodes: ['ee-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Estonia', iso3Code: 'EST', iso2Code: 'EE', datasetCodes: ['ee-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Ethiopia', iso3Code: 'ETH', iso2Code: 'ET', datasetCodes: ['et-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Ethiopia', iso3Code: 'ETH', iso2Code: 'ET', datasetCodes: ['et-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Falkland Islands (Malvinas)', iso3Code: 'FLK', iso2Code: 'FK', datasetCodes: ['fk-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Faroe Islands', iso3Code: 'FRO', iso2Code: 'FO', datasetCodes: ['fo-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Faroe Islands', iso3Code: 'FRO', iso2Code: 'FO', datasetCodes: ['fo-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Fiji', iso3Code: 'FJI', iso2Code: 'FJ', datasetCodes: ['fj-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Fiji', iso3Code: 'FJI', iso2Code: 'FJ', datasetCodes: ['fj-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Finland', iso3Code: 'FIN', iso2Code: 'FI', datasetCodes: ['fi-address'], searchTypes: [ 'singleline', 'typedown' ]}, + {country: 'Finland', iso3Code: 'FIN', iso2Code: 'FI', datasetCodes: ['fi-address-ed'], searchTypes: [ 'validate' ]}, + {country: 'Finland', iso3Code: 'FIN', iso2Code: 'FI', datasetCodes: ['fi-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'France Street Level', iso3Code: 'FRA', iso2Code: 'FR', datasetCodes: ['fr-address-streetlevel'], searchTypes: [ 'singleline', 'typedown', 'validate' ]}, + {country: 'France Sub-Premises Level', iso3Code: 'FRA', iso2Code: 'FR', datasetCodes: ['fr-additional-hexaline3'], searchTypes: [ 'autocomplete', 'singleline', 'typedown' ]}, + {country: 'France Premises Level', iso3Code: 'FRA', iso2Code: 'FR', datasetCodes: ['fr-address'], searchTypes: [ 'singleline', 'typedown', 'validate' ]}, + {country: 'French Guiana', iso3Code: 'GUF', iso2Code: 'GF', datasetCodes: ['gf-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'French Polynesia', iso3Code: 'PYF', iso2Code: 'PF', datasetCodes: ['pf-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Gabon', iso3Code: 'GAB', iso2Code: 'GA', datasetCodes: ['ga-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Gabon', iso3Code: 'GAB', iso2Code: 'GA', datasetCodes: ['ga-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Gambia', iso3Code: 'GMB', iso2Code: 'GM', datasetCodes: ['gm-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Gambia', iso3Code: 'GMB', iso2Code: 'GM', datasetCodes: ['gm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Georgia', iso3Code: 'GEO', iso2Code: 'GE', datasetCodes: ['ge-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Georgia', iso3Code: 'GEO', iso2Code: 'GE', datasetCodes: ['ge-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Germany', iso3Code: 'DEU', iso2Code: 'DE', datasetCodes: ['de-address'], searchTypes: [ 'singleline', 'typedown', 'validate' ]}, + {country: 'Germany', iso3Code: 'DEU', iso2Code: 'DE', datasetCodes: ['de-address-ed'], searchTypes: [ 'validate' ]}, + {country: 'Germany', iso3Code: 'DEU', iso2Code: 'DE', datasetCodes: ['de-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Ghana', iso3Code: 'GHA', iso2Code: 'GH', datasetCodes: ['gh-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Ghana', iso3Code: 'GHA', iso2Code: 'GH', datasetCodes: ['gh-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Gibraltar', iso3Code: 'GIB', iso2Code: 'GI', datasetCodes: ['gi-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Greece', iso3Code: 'GRC', iso2Code: 'GR', datasetCodes: ['gr-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Greece', iso3Code: 'GRC', iso2Code: 'GR', datasetCodes: ['gr-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Greenland', iso3Code: 'GRL', iso2Code: 'GL', datasetCodes: ['gl-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Greenland', iso3Code: 'GRL', iso2Code: 'GL', datasetCodes: ['gl-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Grenada', iso3Code: 'GRD', iso2Code: 'GD', datasetCodes: ['gd-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Grenada', iso3Code: 'GRD', iso2Code: 'GD', datasetCodes: ['gd-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Guadeloupe', iso3Code: 'GLP', iso2Code: 'GP', datasetCodes: ['gp-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Guam', iso3Code: 'GUM', iso2Code: 'GU', datasetCodes: ['gu-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Guatemala', iso3Code: 'GTM', iso2Code: 'GT', datasetCodes: ['gt-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Guatemala', iso3Code: 'GTM', iso2Code: 'GT', datasetCodes: ['gt-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Guinea', iso3Code: 'GIN', iso2Code: 'GN', datasetCodes: ['gn-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Guinea', iso3Code: 'GIN', iso2Code: 'GN', datasetCodes: ['gn-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Guinea-Bissau', iso3Code: 'GNB', iso2Code: 'GW', datasetCodes: ['gw-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Guinea-Bissau', iso3Code: 'GNB', iso2Code: 'GW', datasetCodes: ['gw-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Guyana', iso3Code: 'GUY', iso2Code: 'GY', datasetCodes: ['gy-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Guyana', iso3Code: 'GUY', iso2Code: 'GY', datasetCodes: ['gy-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Haiti', iso3Code: 'HTI', iso2Code: 'HT', datasetCodes: ['ht-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Haiti', iso3Code: 'HTI', iso2Code: 'HT', datasetCodes: ['ht-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Honduras', iso3Code: 'HND', iso2Code: 'HN', datasetCodes: ['hn-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Honduras', iso3Code: 'HND', iso2Code: 'HN', datasetCodes: ['hn-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Hong Kong', iso3Code: 'HKG', iso2Code: 'HK', datasetCodes: ['hk-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Hong Kong', iso3Code: 'HKG', iso2Code: 'HK', datasetCodes: ['hk-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Hungary', iso3Code: 'HUN', iso2Code: 'HU', datasetCodes: ['hu-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Hungary', iso3Code: 'HUN', iso2Code: 'HU', datasetCodes: ['hu-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Iceland', iso3Code: 'ISL', iso2Code: 'IS', datasetCodes: ['is-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Iceland', iso3Code: 'ISL', iso2Code: 'IS', datasetCodes: ['is-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'India', iso3Code: 'IND', iso2Code: 'IN', datasetCodes: ['in-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'India', iso3Code: 'IND', iso2Code: 'IN', datasetCodes: ['in-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Indonesia', iso3Code: 'IDN', iso2Code: 'ID', datasetCodes: ['id-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Indonesia', iso3Code: 'IDN', iso2Code: 'ID', datasetCodes: ['id-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Iran, Islamic Republic of', iso3Code: 'IRN', iso2Code: 'IR', datasetCodes: ['ir-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Iran, Islamic Republic of', iso3Code: 'IRN', iso2Code: 'IR', datasetCodes: ['ir-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Iraq', iso3Code: 'IRQ', iso2Code: 'IQ', datasetCodes: ['iq-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Iraq', iso3Code: 'IRQ', iso2Code: 'IQ', datasetCodes: ['iq-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Ireland', iso3Code: 'IRL', iso2Code: 'IE', datasetCodes: ['ie-address'], searchTypes: [ 'singleline', 'typedown' ]}, + {country: 'Ireland', iso3Code: 'IRL', iso2Code: 'IE', datasetCodes: ['ie-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Ireland Eircode', iso3Code: 'IRL', iso2Code: 'IE', datasetCodes: ['ie-additional-eircode'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Ireland ECAD', iso3Code: 'IRL', iso2Code: 'IE', datasetCodes: ['ie-address-ecad'], searchTypes: [ 'autocomplete', 'lookupv2', 'singleline', 'typedown' ]}, + {country: 'Israel', iso3Code: 'ISR', iso2Code: 'IL', datasetCodes: ['il-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Israel', iso3Code: 'ISR', iso2Code: 'IL', datasetCodes: ['il-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Italy', iso3Code: 'ITA', iso2Code: 'IT', datasetCodes: ['it-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Italy', iso3Code: 'ITA', iso2Code: 'IT', datasetCodes: ['it-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Jamaica', iso3Code: 'JAM', iso2Code: 'JM', datasetCodes: ['jm-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Jamaica', iso3Code: 'JAM', iso2Code: 'JM', datasetCodes: ['jm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Japan', iso3Code: 'JPN', iso2Code: 'JP', datasetCodes: ['jp-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Japan', iso3Code: 'JPN', iso2Code: 'JP', datasetCodes: ['jp-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Jordan', iso3Code: 'JOR', iso2Code: 'JO', datasetCodes: ['jo-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Jordan', iso3Code: 'JOR', iso2Code: 'JO', datasetCodes: ['jo-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Kazakhstan', iso3Code: 'KAZ', iso2Code: 'KZ', datasetCodes: ['kz-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Kazakhstan', iso3Code: 'KAZ', iso2Code: 'KZ', datasetCodes: ['kz-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Kenya', iso3Code: 'KEN', iso2Code: 'KE', datasetCodes: ['ke-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Kenya', iso3Code: 'KEN', iso2Code: 'KE', datasetCodes: ['ke-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Kiribati', iso3Code: 'KIR', iso2Code: 'KI', datasetCodes: ['ki-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Kiribati', iso3Code: 'KIR', iso2Code: 'KI', datasetCodes: ['ki-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Korea, Democratic People\'s Republic of', iso3Code: 'PRK', iso2Code: 'KP', datasetCodes: ['kp-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Korea, Democratic People\'s Republic of', iso3Code: 'PRK', iso2Code: 'KP', datasetCodes: ['kp-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Korea, Republic of', iso3Code: 'KOR', iso2Code: 'KR', datasetCodes: ['kr-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Korea, Republic of', iso3Code: 'KOR', iso2Code: 'KR', datasetCodes: ['kr-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Kosovo', iso3Code: 'KOS', iso2Code: 'XK', datasetCodes: ['kv-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Kuwait', iso3Code: 'KWT', iso2Code: 'KW', datasetCodes: ['kw-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Kuwait', iso3Code: 'KWT', iso2Code: 'KW', datasetCodes: ['kw-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Kyrgyzstan', iso3Code: 'KGZ', iso2Code: 'KG', datasetCodes: ['kg-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Kyrgyzstan', iso3Code: 'KGZ', iso2Code: 'KG', datasetCodes: ['kg-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Laos', iso3Code: 'LAO', iso2Code: 'LA', datasetCodes: ['la-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Laos', iso3Code: 'LAO', iso2Code: 'LA', datasetCodes: ['la-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Latvia', iso3Code: 'LVA', iso2Code: 'LV', datasetCodes: ['lv-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Latvia', iso3Code: 'LVA', iso2Code: 'LV', datasetCodes: ['lv-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Lebanon', iso3Code: 'LBN', iso2Code: 'LB', datasetCodes: ['lb-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Lebanon', iso3Code: 'LBN', iso2Code: 'LB', datasetCodes: ['lb-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Lesotho', iso3Code: 'LSO', iso2Code: 'LS', datasetCodes: ['ls-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Lesotho', iso3Code: 'LSO', iso2Code: 'LS', datasetCodes: ['ls-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Liberia', iso3Code: 'LBR', iso2Code: 'LR', datasetCodes: ['lr-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Liberia', iso3Code: 'LBR', iso2Code: 'LR', datasetCodes: ['lr-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Libya', iso3Code: 'LBY', iso2Code: 'LY', datasetCodes: ['ly-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Libya', iso3Code: 'LBY', iso2Code: 'LY', datasetCodes: ['ly-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Liechtenstein', iso3Code: 'LIE', iso2Code: 'LI', datasetCodes: ['li-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Liechtenstein', iso3Code: 'LIE', iso2Code: 'LI', datasetCodes: ['li-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Lithuania', iso3Code: 'LTU', iso2Code: 'LT', datasetCodes: ['lt-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Lithuania', iso3Code: 'LTU', iso2Code: 'LT', datasetCodes: ['lt-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Luxembourg', iso3Code: 'LUX', iso2Code: 'LU', datasetCodes: ['lu-address'], searchTypes: [ 'singleline', 'typedown', 'validate' ]}, + {country: 'Luxembourg', iso3Code: 'LUX', iso2Code: 'LU', datasetCodes: ['lu-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Macau', iso3Code: 'MAC', iso2Code: 'MO', datasetCodes: ['lv-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Macau', iso3Code: 'MAC', iso2Code: 'MO', datasetCodes: ['lv-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Madagascar', iso3Code: 'MDG', iso2Code: 'MG', datasetCodes: ['mo-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Madagascar', iso3Code: 'MDG', iso2Code: 'MG', datasetCodes: ['mo-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Malawi', iso3Code: 'MWI', iso2Code: 'MW', datasetCodes: ['mw-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Malawi', iso3Code: 'MWI', iso2Code: 'MW', datasetCodes: ['mw-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Malaysia', iso3Code: 'MYS', iso2Code: 'MY', datasetCodes: ['my-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Malaysia', iso3Code: 'MYS', iso2Code: 'MY', datasetCodes: ['my-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Maldives', iso3Code: 'MDV', iso2Code: 'MV', datasetCodes: ['mv-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Maldives', iso3Code: 'MDV', iso2Code: 'MV', datasetCodes: ['mv-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Mali', iso3Code: 'MLI', iso2Code: 'ML', datasetCodes: ['ml-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Mali', iso3Code: 'MLI', iso2Code: 'ML', datasetCodes: ['ml-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Malta', iso3Code: 'MLT', iso2Code: 'MT', datasetCodes: ['mt-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Malta', iso3Code: 'MLT', iso2Code: 'MT', datasetCodes: ['mt-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Marshall Islands', iso3Code: 'MHL', iso2Code: 'MH', datasetCodes: ['mh-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Martinique', iso3Code: 'MTQ', iso2Code: 'MQ', datasetCodes: ['mq-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Mauritania', iso3Code: 'MRT', iso2Code: 'MR', datasetCodes: ['mr-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Mauritania', iso3Code: 'MRT', iso2Code: 'MR', datasetCodes: ['mr-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Mauritius', iso3Code: 'MUS', iso2Code: 'MU', datasetCodes: ['mu-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Mauritius', iso3Code: 'MUS', iso2Code: 'MU', datasetCodes: ['mu-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Mayotte', iso3Code: 'MYT', iso2Code: 'YT', datasetCodes: ['yt-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Mexico', iso3Code: 'MEX', iso2Code: 'MX', datasetCodes: ['mx-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Mexico', iso3Code: 'MEX', iso2Code: 'MX', datasetCodes: ['mx-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Micronesia, Federated States of', iso3Code: 'FSM', iso2Code: 'FM', datasetCodes: ['fm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Moldova', iso3Code: 'MDA', iso2Code: 'MD', datasetCodes: ['md-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Moldova', iso3Code: 'MDA', iso2Code: 'MD', datasetCodes: ['md-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Monaco', iso3Code: 'MCO', iso2Code: 'MC', datasetCodes: ['mc-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Monaco', iso3Code: 'MCO', iso2Code: 'MC', datasetCodes: ['mc-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Mongolia', iso3Code: 'MNG', iso2Code: 'MN', datasetCodes: ['mn-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Mongolia', iso3Code: 'MNG', iso2Code: 'MN', datasetCodes: ['mn-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Montenegro', iso3Code: 'MNE', iso2Code: 'ME', datasetCodes: ['me-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Montenegro', iso3Code: 'MNE', iso2Code: 'ME', datasetCodes: ['me-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Montserrat', iso3Code: 'MSR', iso2Code: 'MS', datasetCodes: ['ms-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Morocco', iso3Code: 'MAR', iso2Code: 'MA', datasetCodes: ['ma-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Morocco', iso3Code: 'MAR', iso2Code: 'MA', datasetCodes: ['ma-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Mozambique', iso3Code: 'MOZ', iso2Code: 'MZ', datasetCodes: ['mz-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Mozambique', iso3Code: 'MOZ', iso2Code: 'MZ', datasetCodes: ['mz-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Myanmar', iso3Code: 'MMR', iso2Code: 'MM', datasetCodes: ['mm-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Myanmar', iso3Code: 'MMR', iso2Code: 'MM', datasetCodes: ['mm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Namibia', iso3Code: 'NAM', iso2Code: 'NA', datasetCodes: ['na-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Namibia', iso3Code: 'NAM', iso2Code: 'NA', datasetCodes: ['na-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Nauru', iso3Code: 'NRU', iso2Code: 'NR', datasetCodes: ['nr-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Nauru', iso3Code: 'NRU', iso2Code: 'NR', datasetCodes: ['nr-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Nepal', iso3Code: 'NPL', iso2Code: 'NP', datasetCodes: ['np-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Nepal', iso3Code: 'NPL', iso2Code: 'NP', datasetCodes: ['np-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Netherlands', iso3Code: 'NLD', iso2Code: 'NL', datasetCodes: ['nl-address'], searchTypes: [ 'singleline', 'typedown', 'validate' ]}, + {country: 'Netherlands', iso3Code: 'NLD', iso2Code: 'NL', datasetCodes: ['nl-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'New Caledonia', iso3Code: 'NCL', iso2Code: 'NC', datasetCodes: ['nc-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'New Zealand DataFusion', iso3Code: 'NZL', iso2Code: 'NZ', datasetCodes: ['nz-additional-datafusion'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2' ]}, + {country: 'New Zealand Postal Address', iso3Code: 'NZL', iso2Code: 'NZ', datasetCodes: ['nz-address'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2' ]}, + {country: 'Nicaragua', iso3Code: 'NIC', iso2Code: 'NI', datasetCodes: ['ni-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Nicaragua', iso3Code: 'NIC', iso2Code: 'NI', datasetCodes: ['ni-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Niger', iso3Code: 'NER', iso2Code: 'NE', datasetCodes: ['ne-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Niger', iso3Code: 'NER', iso2Code: 'NE', datasetCodes: ['ne-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Nigeria', iso3Code: 'NGA', iso2Code: 'NG', datasetCodes: ['ng-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Nigeria', iso3Code: 'NGA', iso2Code: 'NG', datasetCodes: ['ng-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Niue', iso3Code: 'NIU', iso2Code: 'NU', datasetCodes: ['nu-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Niue', iso3Code: 'NIU', iso2Code: 'NU', datasetCodes: ['nu-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Norfolk Island', iso3Code: 'NFK', iso2Code: 'NF', datasetCodes: ['nf-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Norfolk Island', iso3Code: 'NFK', iso2Code: 'NF', datasetCodes: ['nf-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'North Macedonia', iso3Code: 'MKD', iso2Code: 'MK', datasetCodes: ['mk-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'North Macedonia', iso3Code: 'MKD', iso2Code: 'MK', datasetCodes: ['mk-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Northern Mariana Islands', iso3Code: 'MNP', iso2Code: 'MP', datasetCodes: ['mp-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Norway', iso3Code: 'NOR', iso2Code: 'NO', datasetCodes: ['no-address'], searchTypes: [ 'singleline', 'typedown' ]}, + {country: 'Norway', iso3Code: 'NOR', iso2Code: 'NO', datasetCodes: ['no-address-ed'], searchTypes: [ 'validate' ]}, + {country: 'Norway', iso3Code: 'NOR', iso2Code: 'NO', datasetCodes: ['no-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Oman', iso3Code: 'OMN', iso2Code: 'OM', datasetCodes: ['om-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Oman', iso3Code: 'OMN', iso2Code: 'OM', datasetCodes: ['om-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Pakistan', iso3Code: 'PAK', iso2Code: 'PK', datasetCodes: ['pk-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Pakistan', iso3Code: 'PAK', iso2Code: 'PK', datasetCodes: ['pk-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Palau', iso3Code: 'PLW', iso2Code: 'PW', datasetCodes: ['pw-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Palestine', iso3Code: 'PSE', iso2Code: 'PS', datasetCodes: ['ps-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Panama', iso3Code: 'PAN', iso2Code: 'PA', datasetCodes: ['pa-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Panama', iso3Code: 'PAN', iso2Code: 'PA', datasetCodes: ['pa-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Papua New Guinea', iso3Code: 'PNG', iso2Code: 'PG', datasetCodes: ['pg-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Papua New Guinea', iso3Code: 'PNG', iso2Code: 'PG', datasetCodes: ['pg-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Paraguay', iso3Code: 'PRY', iso2Code: 'PY', datasetCodes: ['py-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Paraguay', iso3Code: 'PRY', iso2Code: 'PY', datasetCodes: ['py-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Peru', iso3Code: 'PER', iso2Code: 'PE', datasetCodes: ['pe-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Peru', iso3Code: 'PER', iso2Code: 'PE', datasetCodes: ['pe-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Philippines', iso3Code: 'PHL', iso2Code: 'PH', datasetCodes: ['ph-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Philippines', iso3Code: 'PHL', iso2Code: 'PH', datasetCodes: ['ph-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Pitcairn Islands', iso3Code: 'PCN', iso2Code: 'PN', datasetCodes: ['pn-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Poland', iso3Code: 'POL', iso2Code: 'PL', datasetCodes: ['pl-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Poland', iso3Code: 'POL', iso2Code: 'PL', datasetCodes: ['pl-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Portugal', iso3Code: 'PRT', iso2Code: 'PT', datasetCodes: ['pt-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Portugal', iso3Code: 'PRT', iso2Code: 'PT', datasetCodes: ['pt-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Qatar', iso3Code: 'QAT', iso2Code: 'QA', datasetCodes: ['qa-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Qatar', iso3Code: 'QAT', iso2Code: 'QA', datasetCodes: ['qa-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Romania', iso3Code: 'ROU', iso2Code: 'RO', datasetCodes: ['ro-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Romania', iso3Code: 'ROU', iso2Code: 'RO', datasetCodes: ['ro-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Russian Federation', iso3Code: 'RUS', iso2Code: 'RU', datasetCodes: ['ru-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Russian Federation', iso3Code: 'RUS', iso2Code: 'RU', datasetCodes: ['ru-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Rwanda', iso3Code: 'RWA', iso2Code: 'RW', datasetCodes: ['rw-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Rwanda', iso3Code: 'RWA', iso2Code: 'RW', datasetCodes: ['rw-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Réunion', iso3Code: 'REU', iso2Code: 'RE', datasetCodes: ['re-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Saint Barthélemy', iso3Code: 'BLM', iso2Code: 'BL', datasetCodes: ['bl-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Saint Helena', iso3Code: 'SHN', iso2Code: 'SH', datasetCodes: ['sh-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Saint Kitts and Nevis', iso3Code: 'KNA', iso2Code: 'KN', datasetCodes: ['kn-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Saint Kitts and Nevis', iso3Code: 'KNA', iso2Code: 'KN', datasetCodes: ['kn-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Saint Lucia', iso3Code: 'LCA', iso2Code: 'LC', datasetCodes: ['lc-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Saint Martin', iso3Code: 'MAF', iso2Code: 'MF', datasetCodes: ['mf-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Saint Pierre and Miquelon', iso3Code: 'SPM', iso2Code: 'PM', datasetCodes: ['pm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Saint Vincent and the Grenadines', iso3Code: 'VCT', iso2Code: 'VC', datasetCodes: ['vc-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Saint Vincent and the Grenadines', iso3Code: 'VCT', iso2Code: 'VC', datasetCodes: ['vc-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Samoa', iso3Code: 'WSM', iso2Code: 'WS', datasetCodes: ['ws-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Samoa', iso3Code: 'WSM', iso2Code: 'WS', datasetCodes: ['ws-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'San Marino', iso3Code: 'SMR', iso2Code: 'SM', datasetCodes: ['sm-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'San Marino', iso3Code: 'SMR', iso2Code: 'SM', datasetCodes: ['sm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Sao Tome and Principe', iso3Code: 'STP', iso2Code: 'ST', datasetCodes: ['st-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Sao Tome and Principe', iso3Code: 'STP', iso2Code: 'ST', datasetCodes: ['st-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Saudi Arabia', iso3Code: 'SAU', iso2Code: 'SA', datasetCodes: ['sa-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Saudi Arabia', iso3Code: 'SAU', iso2Code: 'SA', datasetCodes: ['sa-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Senegal', iso3Code: 'SEN', iso2Code: 'SN', datasetCodes: ['sn-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Senegal', iso3Code: 'SEN', iso2Code: 'SN', datasetCodes: ['sn-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Serbia', iso3Code: 'SRB', iso2Code: 'RS', datasetCodes: ['rs-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Serbia', iso3Code: 'SRB', iso2Code: 'RS', datasetCodes: ['rs-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Seychelles', iso3Code: 'SYC', iso2Code: 'SC', datasetCodes: ['sc-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Seychelles', iso3Code: 'SYC', iso2Code: 'SC', datasetCodes: ['sc-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Sierra Leone', iso3Code: 'SLE', iso2Code: 'SL', datasetCodes: ['sl-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Sierra Leone', iso3Code: 'SLE', iso2Code: 'SL', datasetCodes: ['sl-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Singapore', iso3Code: 'SGP', iso2Code: 'SG', datasetCodes: ['sg-address'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2' ]}, + {country: 'Sint Maarten', iso3Code: 'SXM', iso2Code: 'SX', datasetCodes: ['sx-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Sint Maarten', iso3Code: 'SXM', iso2Code: 'SX', datasetCodes: ['sx-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Slovakia', iso3Code: 'SVK', iso2Code: 'SK', datasetCodes: ['sk-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Slovakia', iso3Code: 'SVK', iso2Code: 'SK', datasetCodes: ['sk-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Slovenia', iso3Code: 'SVN', iso2Code: 'SI', datasetCodes: ['si-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Slovenia', iso3Code: 'SVN', iso2Code: 'SI', datasetCodes: ['si-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Solomon Islands', iso3Code: 'SLB', iso2Code: 'SB', datasetCodes: ['sb-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Solomon Islands', iso3Code: 'SLB', iso2Code: 'SB', datasetCodes: ['sb-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Somalia', iso3Code: 'SOM', iso2Code: 'SO', datasetCodes: ['so-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Somalia', iso3Code: 'SOM', iso2Code: 'SO', datasetCodes: ['so-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'South Africa', iso3Code: 'ZAF', iso2Code: 'ZA', datasetCodes: ['za-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'South Africa', iso3Code: 'ZAF', iso2Code: 'ZA', datasetCodes: ['za-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'South Georgia and the South Sandwich Islands', iso3Code: 'SGS', iso2Code: 'GS', datasetCodes: ['gs-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'South Sudan', iso3Code: 'SSD', iso2Code: 'SS', datasetCodes: ['ss-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'South Sudan', iso3Code: 'SSD', iso2Code: 'SS', datasetCodes: ['ss-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Spain', iso3Code: 'ESP', iso2Code: 'ES', datasetCodes: ['es-address'], searchTypes: [ 'singleline', 'typedown' ]}, + {country: 'Spain', iso3Code: 'ESP', iso2Code: 'ES', datasetCodes: ['es-address-ed'], searchTypes: [ 'validate' ]}, + {country: 'Spain', iso3Code: 'ESP', iso2Code: 'ES', datasetCodes: ['es-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Sri Lanka', iso3Code: 'LKA', iso2Code: 'LK', datasetCodes: ['lk-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Sudan', iso3Code: 'SDN', iso2Code: 'SD', datasetCodes: ['sd-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Sudan', iso3Code: 'SDN', iso2Code: 'SD', datasetCodes: ['sd-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Suriname', iso3Code: 'SUR', iso2Code: 'SR', datasetCodes: ['sr-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Suriname', iso3Code: 'SUR', iso2Code: 'SR', datasetCodes: ['sr-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Svalbard and Jan Mayen Islands', iso3Code: 'SJM', iso2Code: 'SJ', datasetCodes: ['sj-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Swaziland (Eswatini)', iso3Code: 'SWZ', iso2Code: 'SZ', datasetCodes: ['sz-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Swaziland (Eswatini)', iso3Code: 'SWZ', iso2Code: 'SZ', datasetCodes: ['sz-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Sweden', iso3Code: 'SWE', iso2Code: 'SE', datasetCodes: ['se-address'], searchTypes: [ 'singleline', 'typedown' ]}, + {country: 'Sweden', iso3Code: 'SWE', iso2Code: 'SE', datasetCodes: ['se-address-ed'], searchTypes: [ 'validate' ]}, + {country: 'Sweden', iso3Code: 'SWE', iso2Code: 'SE', datasetCodes: ['se-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Switzerland', iso3Code: 'CHE', iso2Code: 'CH', datasetCodes: ['ch-address'], searchTypes: [ 'singleline', 'typedown' ]}, + {country: 'Switzerland', iso3Code: 'CHE', iso2Code: 'CH', datasetCodes: ['ch-address-ed'], searchTypes: [ 'validate' ]}, + {country: 'Switzerland', iso3Code: 'CHE', iso2Code: 'CH', datasetCodes: ['ch-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Syria', iso3Code: 'SYR', iso2Code: 'SY', datasetCodes: ['sy-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Syria', iso3Code: 'SYR', iso2Code: 'SY', datasetCodes: ['sy-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Taiwan', iso3Code: 'TWN', iso2Code: 'TW', datasetCodes: ['tw-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Taiwan', iso3Code: 'TWN', iso2Code: 'TW', datasetCodes: ['tw-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Tajikistan', iso3Code: 'TJK', iso2Code: 'TJ', datasetCodes: ['tj-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Tajikistan', iso3Code: 'TJK', iso2Code: 'TJ', datasetCodes: ['tj-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Tanzania', iso3Code: 'TZA', iso2Code: 'TZ', datasetCodes: ['tz-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Tanzania', iso3Code: 'TZA', iso2Code: 'TZ', datasetCodes: ['tz-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Thailand', iso3Code: 'THA', iso2Code: 'TH', datasetCodes: ['th-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Thailand', iso3Code: 'THA', iso2Code: 'TH', datasetCodes: ['th-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Timor-Leste', iso3Code: 'TLS', iso2Code: 'TL', datasetCodes: ['tl-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Timor-Leste', iso3Code: 'TLS', iso2Code: 'TL', datasetCodes: ['tl-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Togo', iso3Code: 'TGO', iso2Code: 'TG', datasetCodes: ['tg-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Togo', iso3Code: 'TGO', iso2Code: 'TG', datasetCodes: ['tg-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Tokelau', iso3Code: 'TKL', iso2Code: 'TK', datasetCodes: ['tk-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Tokelau', iso3Code: 'TKL', iso2Code: 'TK', datasetCodes: ['tk-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Tonga', iso3Code: 'TON', iso2Code: 'TO', datasetCodes: ['to-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Tonga', iso3Code: 'TON', iso2Code: 'TO', datasetCodes: ['to-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Trinidad and Tobago', iso3Code: 'TTO', iso2Code: 'TT', datasetCodes: ['tt-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Trinidad and Tobago', iso3Code: 'TTO', iso2Code: 'TT', datasetCodes: ['tt-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Tunisia', iso3Code: 'TUN', iso2Code: 'TN', datasetCodes: ['tn-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Tunisia', iso3Code: 'TUN', iso2Code: 'TN', datasetCodes: ['tn-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Turkey', iso3Code: 'TUR', iso2Code: 'TR', datasetCodes: ['tr-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Turkey', iso3Code: 'TUR', iso2Code: 'TR', datasetCodes: ['tr-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Turkish Republic of Northern Cyprus', iso3Code: 'NCY', iso2Code: 'CY', datasetCodes: ['ny-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Turkmenistan', iso3Code: 'TKM', iso2Code: 'TM', datasetCodes: ['tm-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Turkmenistan', iso3Code: 'TKM', iso2Code: 'TM', datasetCodes: ['tm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Turks and Caicos Islands', iso3Code: 'TCA', iso2Code: 'TC', datasetCodes: ['tc-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Tuvalu', iso3Code: 'TUV', iso2Code: 'TV', datasetCodes: ['tv-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Tuvalu', iso3Code: 'TUV', iso2Code: 'TV', datasetCodes: ['tv-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Uganda', iso3Code: 'UGA', iso2Code: 'UG', datasetCodes: ['ug-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Uganda', iso3Code: 'UGA', iso2Code: 'UG', datasetCodes: ['ug-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Ukraine', iso3Code: 'UKR', iso2Code: 'UA', datasetCodes: ['ua-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Ukraine', iso3Code: 'UKR', iso2Code: 'UA', datasetCodes: ['ua-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'United Arab Emirates', iso3Code: 'ARE', iso2Code: 'AE', datasetCodes: ['ae-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'United Arab Emirates', iso3Code: 'ARE', iso2Code: 'AE', datasetCodes: ['ae-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + //{country: 'United Kingdom', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-additional-multipleresidence','gb-additional-notyetbuilt','gb-additional-business','gb-additional-electricity','gb-additional-gas'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2', 'combined' ]}, + {country: 'United Kingdom', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-additional-multipleresidence','gb-additional-notyetbuilt'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2', 'combined' ]}, + {country: 'United Kingdom (Postal Address File only)', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-address'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2', 'combined' ]}, + {country: 'United Kingdom AddressBase Premium', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-address-addressbase'], searchTypes: [ 'singleline', 'typedown', 'validate', 'lookup' ]}, + {country: 'United Kingdom AddressBase Premium with Islands', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-additional-addressbaseislands'], searchTypes: [ 'singleline', 'typedown', 'validate', 'lookup' ]}, + {country: 'United Kingdom Business Names', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-additional-business'], searchTypes: [ 'autocomplete', 'singleline', 'typedown' ]}, + {country: 'United Kingdom Multiple Residence', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-additional-multipleresidence'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2', 'combined' ]}, + {country: 'United Kingdom Not Yet Built', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-additional-notyetbuilt'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2', 'combined' ]}, + {country: 'United Kingdom Utilities (Electricity and Gas)', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-additional-electricity','gb-additional-gas'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'lookupv2', 'combined' ]}, + {country: 'United Kingdom Street Level', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-address-streetlevel'], searchTypes: [ 'singleline', 'typedown' ]}, + {country: 'United Kingdom Extended Business', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-additional-businessextended'], searchTypes: [ 'singleline', 'typedown', 'validate', 'lookup' ]}, + {country: 'United Kingdom Cymraeg (Welsh Language) Postal Address', iso3Code: 'GBR', iso2Code: 'GB', datasetCodes: ['gb-address-wales'], searchTypes: [ 'singleline', 'typedown', 'validate' ]}, + {country: 'United States of America', iso3Code: 'USA', iso2Code: 'US', datasetCodes: ['us-address'], searchTypes: [ 'autocomplete', 'singleline', 'typedown', 'validate', 'lookupv2' ]}, + {country: 'Uruguay', iso3Code: 'URY', iso2Code: 'UY', datasetCodes: ['uy-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Uruguay', iso3Code: 'URY', iso2Code: 'UY', datasetCodes: ['uy-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Uzbekistan', iso3Code: 'UZB', iso2Code: 'UZ', datasetCodes: ['uz-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Uzbekistan', iso3Code: 'UZB', iso2Code: 'UZ', datasetCodes: ['uz-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Vanuatu', iso3Code: 'VUT', iso2Code: 'VU', datasetCodes: ['vu-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Vanuatu', iso3Code: 'VUT', iso2Code: 'VU', datasetCodes: ['vu-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Vatican City (Holy See)', iso3Code: 'VAT', iso2Code: 'VA', datasetCodes: ['va-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Vatican City (Holy See)', iso3Code: 'VAT', iso2Code: 'VA', datasetCodes: ['va-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Venezuela', iso3Code: 'VEN', iso2Code: 'VE', datasetCodes: ['ve-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Venezuela', iso3Code: 'VEN', iso2Code: 'VE', datasetCodes: ['ve-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Viet Nam', iso3Code: 'VNM', iso2Code: 'VN', datasetCodes: ['vn-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Viet Nam', iso3Code: 'VNM', iso2Code: 'VN', datasetCodes: ['vn-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Virgin Islands, British', iso3Code: 'VGB', iso2Code: 'VG', datasetCodes: ['vg-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Virgin Islands, U.S.', iso3Code: 'VIR', iso2Code: 'VI', datasetCodes: ['vi-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Wallis and Futuna Islands', iso3Code: 'WLF', iso2Code: 'WF', datasetCodes: ['wf-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Western Sahara', iso3Code: 'ESH', iso2Code: 'EH', datasetCodes: ['eh-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Western Sahara', iso3Code: 'ESH', iso2Code: 'EH', datasetCodes: ['eh-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Yemen', iso3Code: 'YEM', iso2Code: 'YE', datasetCodes: ['ye-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Yemen', iso3Code: 'YEM', iso2Code: 'YE', datasetCodes: ['ye-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Zambia', iso3Code: 'ZMB', iso2Code: 'ZM', datasetCodes: ['zm-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Zambia', iso3Code: 'ZMB', iso2Code: 'ZM', datasetCodes: ['zm-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]}, + {country: 'Zimbabwe', iso3Code: 'ZWE', iso2Code: 'ZW', datasetCodes: ['zw-address-ed'], searchTypes: [ 'singleline', 'validate' ]}, + {country: 'Zimbabwe', iso3Code: 'ZWE', iso2Code: 'ZW', datasetCodes: ['zw-address-eh'], searchTypes: [ 'autocomplete', 'lookupv2' ]} ]; diff --git a/src/ts/predefined-formats.ts b/src/ts/predefined-formats.ts new file mode 100644 index 0000000..5c81362 --- /dev/null +++ b/src/ts/predefined-formats.ts @@ -0,0 +1,10 @@ +import { AddressValidationMode } from "./search-options"; + +// Needs to be in order of priority for combined search type. LAST format match is used to generate the response. +export const predefinedFormats = [ + {countryIso: 'GBR', minLength: 4, mode: AddressValidationMode.POSTAL_CODE, format: /^[A-Za-z]{1,2}[0-9][A-Za-z0-9]? ?[0-9][A-Za-z]{0,2}$/}, + {countryIso: 'GBR', minLength: null, mode: AddressValidationMode.WHAT3WORDS, format: /^\/{0,}(?:[^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+|[^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3}[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3}[.。。・・︒។։။۔።।][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+([\u0020\u00A0][^0-9`~!@#$%^&*()+\-_=[{\]}\\|'<,.>?/";:£§º©®\s]+){1,3})$/}, + {countryIso: 'GBR', minLength: null, mode: AddressValidationMode.MPAN, format: /^\d{13,21}$/}, + {countryIso: 'GBR', minLength: null, mode: AddressValidationMode.MPRN, format: /^\d{8,10}$/}, + {countryIso: 'GBR', minLength: null, mode: AddressValidationMode.UDPRN, format: /^\d{8}$/}, +]; diff --git a/src/ts/search-options.ts b/src/ts/search-options.ts index 7a83c56..ae3094b 100644 --- a/src/ts/search-options.ts +++ b/src/ts/search-options.ts @@ -4,6 +4,7 @@ export interface AddressSearchOptions { avMode: AddressValidationMode; searchType: AddressValidationSearchType; maxSuggestions: number; + maxSuggestionsForLookup: number; language: string; location: string; useSpinner: boolean; @@ -14,28 +15,49 @@ export interface AddressSearchOptions { useAddressEnteredText: string; searchAgain: { visible?: boolean, text?: string, link?: HTMLButtonElement }; formattedAddressContainer: { showHeading: boolean, headingType: string, validatedHeadingText: string, manualHeadingText: string }; - elements: { input?: HTMLInputElement, inputs?: HTMLInputElement[], countryList?: HTMLSelectElement, address_line_1?: HTMLInputElement, address_line_2?: HTMLInputElement, address_line_3?: HTMLInputElement, locality?: HTMLInputElement, region?: HTMLInputElement, postal_code?: HTMLInputElement, country?: HTMLInputElement, formattedAddressContainer?: HTMLElement, lookupButton?: HTMLButtonElement }; + elements: { + input?: HTMLInputElement, + inputs?: HTMLInputElement[], + countryList?: HTMLSelectElement, + address_line_1?: HTMLInputElement, + address_line_2?: HTMLInputElement, + address_line_3?: HTMLInputElement, + locality?: HTMLInputElement, + region?: HTMLInputElement, + postal_code?: HTMLInputElement, + country?: HTMLInputElement, + formattedAddressContainer?: HTMLElement, + lookupButton?: HTMLButtonElement, + }; } +// Defined in order of preference export enum AddressValidationSearchType { + COMBINED = 'combined', AUTOCOMPLETE = 'autocomplete', - SINGLELINE = 'singleline', VALIDATE = 'validate', - LOOKUPV2 = 'lookupv2' + SINGLELINE = 'singleline', + TYPEDOWN = 'typedown', + LOOKUPV2 = 'lookupv2', } export enum AddressValidationMode { SEARCH = 1, WHAT3WORDS, UDPRN, - LOOKUPV2, + LOCALITY, + POSTAL_CODE, + MPAN, + MPRN, } export const AddressValidationLookupKeywords = { - LOCALITY: {key: "locality", display: 'Locality'}, - POSTAL_CODE: {key: "postal_code", display: "Postal code"}, - UDPRN: {key: "udprn", display: "UDPRN"}, - WHAT3WORDS: {key: "what3words", display: "what3words"}, + WHAT3WORDS: {key: "what3words", display: "What3Words", dataset: [["gb-address"], ["gb-additional-multipleresidence"], ["gb-additional-notyetbuilt"], ["gb-additional-notyetbuilt", "gb-additional-multipleresidence"]]}, + UDPRN: {key: "udprn", display: "UDPRN", dataset: [["gb-address"], ["gb-additional-multipleresidence"], ["gb-additional-notyetbuilt"], ["gb-additional-notyetbuilt", "gb-additional-multipleresidence"]]}, + MPAN: {key: "mpan", display: "MPAN", dataset: [["gb-additional-electricity"], ["gb-additional-electricity", "gb-additional-gas"]]}, + MPRN: {key: "mprn", display: "MPRN", dataset: [["gb-additional-gas"], ["gb-additional-electricity", "gb-additional-gas"]]}, + POSTAL_CODE: {key: "postal_code", display: "Postal code", dataset: []}, + LOCALITY: {key: "locality", display: 'Locality', dataset: []}, } export const AddAddressesOptions = { @@ -55,7 +77,7 @@ export enum AddressValidationConfidenceType { // Default settings export const defaults = { avMode: AddressValidationMode.SEARCH, - searchType: AddressValidationSearchType.AUTOCOMPLETE, + searchType: AddressValidationSearchType.COMBINED, input: { placeholderText: 'Start typing an address...', applyFocus: false }, formattedAddressContainer: { showHeading: false, headingType: 'h3', validatedHeadingText: 'Validated address', manualHeadingText: 'Manual address entered' }, searchAgain: { visible: true, text: 'Search again' },
Welcome to our Experian Address Validation demo. Here you can try some of our available search types.
Welcome to our Experian Address Validation demo. Here you can try our available search types.