diff --git a/.github/workflows/update-regionals.yml b/.github/workflows/update-regionals.yml index a2910548..ba57fff2 100644 --- a/.github/workflows/update-regionals.yml +++ b/.github/workflows/update-regionals.yml @@ -3,7 +3,8 @@ name: Update Regional Information on: workflow_dispatch: schedule: - - cron: '0 0 * * *' + - cron: '0 0 * * 1' # weekly on mondays at 00:00 + - cron: '0 0 * * 4' # weekly on thursdays at 00:00 permissions: contents: write @@ -16,14 +17,14 @@ jobs: runs-on: ubuntu-latest steps: - - name: Install xmlstarlet - run: sudo apt install xmlstarlet idn2 - - name: Checkout uses: actions/checkout@v6 with: ref: ${{ secrets.LAST_MINOR_VERSION }} + - name: Setup environment + uses: ./.github/actions/setup-action + - name: Update top level domains run: bin/console update:domain-toplevel diff --git a/data/domain/public-suffix/AC.php b/data/domain/public-suffix/AC.php index 0545f473..ee427431 100644 --- a/data/domain/public-suffix/AC.php +++ b/data/domain/public-suffix/AC.php @@ -2,10 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.AC', - 'EDU.AC', - 'GOV.AC', - 'MIL.AC', - 'NET.AC', - 'ORG.AC', + 'exceptions' => [], + 'rules' => [ + 'COM.AC', + 'DRR.AC', + 'EDU.AC', + 'FEEDBACK.AC', + 'FORMS.AC', + 'GOV.AC', + 'MIL.AC', + 'NET.AC', + 'ORG.AC', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ACADEMY.php b/data/domain/public-suffix/ACADEMY.php new file mode 100644 index 00000000..5a209b70 --- /dev/null +++ b/data/domain/public-suffix/ACADEMY.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'OFFICIAL.ACADEMY', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/AE.php b/data/domain/public-suffix/AE.php index d939d56f..b35c01a9 100644 --- a/data/domain/public-suffix/AE.php +++ b/data/domain/public-suffix/AE.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.AE', - 'CO.AE', - 'GOV.AE', - 'MIL.AE', - 'NET.AE', - 'ORG.AE', - 'SCH.AE', + 'exceptions' => [], + 'rules' => [ + 'AC.AE', + 'CO.AE', + 'GOV.AE', + 'MIL.AE', + 'NET.AE', + 'ORG.AE', + 'SCH.AE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/AERO.php b/data/domain/public-suffix/AERO.php index d8a5f112..70346c4c 100644 --- a/data/domain/public-suffix/AERO.php +++ b/data/domain/public-suffix/AERO.php @@ -2,92 +2,96 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AIRLINE.AERO', - 'AIRPORT.AERO', - 'ACCIDENT-INVESTIGATION.AERO', - 'ACCIDENT-PREVENTION.AERO', - 'AEROBATIC.AERO', - 'AEROCLUB.AERO', - 'AERODROME.AERO', - 'AGENTS.AERO', - 'AIR-SURVEILLANCE.AERO', - 'AIR-TRAFFIC-CONTROL.AERO', - 'AIRCRAFT.AERO', - 'AIRTRAFFIC.AERO', - 'AMBULANCE.AERO', - 'ASSOCIATION.AERO', - 'AUTHOR.AERO', - 'BALLOONING.AERO', - 'BROKER.AERO', - 'CAA.AERO', - 'CARGO.AERO', - 'CATERING.AERO', - 'CERTIFICATION.AERO', - 'CHAMPIONSHIP.AERO', - 'CHARTER.AERO', - 'CIVILAVIATION.AERO', - 'CLUB.AERO', - 'CONFERENCE.AERO', - 'CONSULTANT.AERO', - 'CONSULTING.AERO', - 'CONTROL.AERO', - 'COUNCIL.AERO', - 'CREW.AERO', - 'DESIGN.AERO', - 'DGCA.AERO', - 'EDUCATOR.AERO', - 'EMERGENCY.AERO', - 'ENGINE.AERO', - 'ENGINEER.AERO', - 'ENTERTAINMENT.AERO', - 'EQUIPMENT.AERO', - 'EXCHANGE.AERO', - 'EXPRESS.AERO', - 'FEDERATION.AERO', - 'FLIGHT.AERO', - 'FREIGHT.AERO', - 'FUEL.AERO', - 'GLIDING.AERO', - 'GOVERNMENT.AERO', - 'GROUNDHANDLING.AERO', - 'GROUP.AERO', - 'HANGGLIDING.AERO', - 'HOMEBUILT.AERO', - 'INSURANCE.AERO', - 'JOURNAL.AERO', - 'JOURNALIST.AERO', - 'LEASING.AERO', - 'LOGISTICS.AERO', - 'MAGAZINE.AERO', - 'MAINTENANCE.AERO', - 'MARKETPLACE.AERO', - 'MEDIA.AERO', - 'MICROLIGHT.AERO', - 'MODELLING.AERO', - 'NAVIGATION.AERO', - 'PARACHUTING.AERO', - 'PARAGLIDING.AERO', - 'PASSENGER-ASSOCIATION.AERO', - 'PILOT.AERO', - 'PRESS.AERO', - 'PRODUCTION.AERO', - 'RECREATION.AERO', - 'REPBODY.AERO', - 'RES.AERO', - 'RESEARCH.AERO', - 'ROTORCRAFT.AERO', - 'SAFETY.AERO', - 'SCIENTIST.AERO', - 'SERVICES.AERO', - 'SHOW.AERO', - 'SKYDIVING.AERO', - 'SOFTWARE.AERO', - 'STUDENT.AERO', - 'TAXI.AERO', - 'TRADER.AERO', - 'TRADING.AERO', - 'TRAINER.AERO', - 'UNION.AERO', - 'WORKINGGROUP.AERO', - 'WORKS.AERO', + 'exceptions' => [], + 'rules' => [ + 'ACCIDENT-INVESTIGATION.AERO', + 'ACCIDENT-PREVENTION.AERO', + 'AEROBATIC.AERO', + 'AEROCLUB.AERO', + 'AERODROME.AERO', + 'AGENTS.AERO', + 'AIR-SURVEILLANCE.AERO', + 'AIR-TRAFFIC-CONTROL.AERO', + 'AIRCRAFT.AERO', + 'AIRLINE.AERO', + 'AIRPORT.AERO', + 'AIRTRAFFIC.AERO', + 'AMBULANCE.AERO', + 'ASSOCIATION.AERO', + 'AUTHOR.AERO', + 'BALLOONING.AERO', + 'BROKER.AERO', + 'CAA.AERO', + 'CARGO.AERO', + 'CATERING.AERO', + 'CERTIFICATION.AERO', + 'CHAMPIONSHIP.AERO', + 'CHARTER.AERO', + 'CIVILAVIATION.AERO', + 'CLUB.AERO', + 'CONFERENCE.AERO', + 'CONSULTANT.AERO', + 'CONSULTING.AERO', + 'CONTROL.AERO', + 'COUNCIL.AERO', + 'CREW.AERO', + 'DESIGN.AERO', + 'DGCA.AERO', + 'EDUCATOR.AERO', + 'EMERGENCY.AERO', + 'ENGINE.AERO', + 'ENGINEER.AERO', + 'ENTERTAINMENT.AERO', + 'EQUIPMENT.AERO', + 'EXCHANGE.AERO', + 'EXPRESS.AERO', + 'FEDERATION.AERO', + 'FLIGHT.AERO', + 'FREIGHT.AERO', + 'FUEL.AERO', + 'GLIDING.AERO', + 'GOVERNMENT.AERO', + 'GROUNDHANDLING.AERO', + 'GROUP.AERO', + 'HANGGLIDING.AERO', + 'HOMEBUILT.AERO', + 'INSURANCE.AERO', + 'JOURNAL.AERO', + 'JOURNALIST.AERO', + 'LEASING.AERO', + 'LOGISTICS.AERO', + 'MAGAZINE.AERO', + 'MAINTENANCE.AERO', + 'MARKETPLACE.AERO', + 'MEDIA.AERO', + 'MICROLIGHT.AERO', + 'MODELLING.AERO', + 'NAVIGATION.AERO', + 'PARACHUTING.AERO', + 'PARAGLIDING.AERO', + 'PASSENGER-ASSOCIATION.AERO', + 'PILOT.AERO', + 'PRESS.AERO', + 'PRODUCTION.AERO', + 'RECREATION.AERO', + 'REPBODY.AERO', + 'RES.AERO', + 'RESEARCH.AERO', + 'ROTORCRAFT.AERO', + 'SAFETY.AERO', + 'SCIENTIST.AERO', + 'SERVICES.AERO', + 'SHOW.AERO', + 'SKYDIVING.AERO', + 'SOFTWARE.AERO', + 'STUDENT.AERO', + 'TAXI.AERO', + 'TRADER.AERO', + 'TRADING.AERO', + 'TRAINER.AERO', + 'UNION.AERO', + 'WORKINGGROUP.AERO', + 'WORKS.AERO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/AF.php b/data/domain/public-suffix/AF.php index 35984080..7c8ac158 100644 --- a/data/domain/public-suffix/AF.php +++ b/data/domain/public-suffix/AF.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.AF', - 'EDU.AF', - 'GOV.AF', - 'NET.AF', - 'ORG.AF', + 'exceptions' => [], + 'rules' => [ + 'COM.AF', + 'EDU.AF', + 'GOV.AF', + 'NET.AF', + 'ORG.AF', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/AG.php b/data/domain/public-suffix/AG.php index 8eeaebce..c43c95cb 100644 --- a/data/domain/public-suffix/AG.php +++ b/data/domain/public-suffix/AG.php @@ -2,9 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.AG', - 'COM.AG', - 'NET.AG', - 'NOM.AG', - 'ORG.AG', + 'exceptions' => [], + 'rules' => [ + 'CO.AG', + 'COM.AG', + 'NET.AG', + 'NOM.AG', + 'OBJ.AG', + 'ORG.AG', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/AI.php b/data/domain/public-suffix/AI.php index 3d117340..cc6f9526 100644 --- a/data/domain/public-suffix/AI.php +++ b/data/domain/public-suffix/AI.php @@ -2,8 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.AI', - 'NET.AI', - 'OFF.AI', - 'ORG.AI', + 'exceptions' => [], + 'rules' => [ + 'COM.AI', + 'FRAMER.AI', + 'KILOAPPS.AI', + 'NET.AI', + 'OFF.AI', + 'ORG.AI', + 'UWU.AI', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/AL.php b/data/domain/public-suffix/AL.php index 9ede9fad..e31f619d 100644 --- a/data/domain/public-suffix/AL.php +++ b/data/domain/public-suffix/AL.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.AL', - 'EDU.AL', - 'GOV.AL', - 'MIL.AL', - 'NET.AL', - 'ORG.AL', + 'exceptions' => [], + 'rules' => [ + 'COM.AL', + 'EDU.AL', + 'GOV.AL', + 'MIL.AL', + 'NET.AL', + 'ORG.AL', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/AM.php b/data/domain/public-suffix/AM.php index 33741558..04c11731 100644 --- a/data/domain/public-suffix/AM.php +++ b/data/domain/public-suffix/AM.php @@ -2,9 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.AM', - 'COM.AM', - 'COMMUNE.AM', - 'NET.AM', - 'ORG.AM', + 'exceptions' => [], + 'rules' => [ + 'CO.AM', + 'COM.AM', + 'COMMUNE.AM', + 'NET.AM', + 'ORG.AM', + 'RADIO.AM', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/AO.php b/data/domain/public-suffix/AO.php index c89e4f8a..10e6fdcd 100644 --- a/data/domain/public-suffix/AO.php +++ b/data/domain/public-suffix/AO.php @@ -2,13 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.AO', - 'ED.AO', - 'EDU.AO', - 'GOV.AO', - 'GV.AO', - 'IT.AO', - 'OG.AO', - 'ORG.AO', - 'PB.AO', + 'exceptions' => [], + 'rules' => [ + 'CO.AO', + 'ED.AO', + 'EDU.AO', + 'GOV.AO', + 'GV.AO', + 'IT.AO', + 'OG.AO', + 'ORG.AO', + 'PB.AO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/APP.php b/data/domain/public-suffix/APP.php new file mode 100644 index 00000000..c4ccb901 --- /dev/null +++ b/data/domain/public-suffix/APP.php @@ -0,0 +1,82 @@ + [], + 'rules' => [ + 'ADAPTABLE.APP', + 'AIVEN.APP', + 'BASE44.APP', + 'BOOKONLINE.APP', + 'BOTDASH.APP', + 'BRAVE.APP', + 'CLERK.APP', + 'CLERKSTAGE.APP', + 'CLOUDFLARE.APP', + 'CONVEX.APP', + 'CORESPEED.APP', + 'CSB.APP', + 'DETA.APP', + 'E2B.APP', + 'EASYPANEL.APP', + 'EDGECOMPUTE.APP', + 'ENCR.APP', + 'EXPO.APP', + 'FLUTTERFLOW.APP', + 'FRAMER.APP', + 'FRONTEND.ENCR.APP', + 'GADGET.APP', + 'GITHUB.APP', + 'HACKCLUB.APP', + 'HASURA.APP', + 'ID.REPLIT.APP', + 'LEAPCELL.APP', + 'LOGINLINE.APP', + 'LOVABLE.APP', + 'LUYANI.APP', + 'MAGICPATTERNS.APP', + 'MEDUSAJS.APP', + 'MESSERLI.APP', + 'MIREN.APP', + 'MOCHA.APP', + 'NETLIFY.APP', + 'NGROK-FREE.APP', + 'NGROK.APP', + 'NOOP.APP', + 'NYAT.APP', + 'ON-FLEEK.APP', + 'ONDIGITALOCEAN.APP', + 'ONHERCULES.APP', + 'PREVIEW.CSB.APP', + 'RELAY.EVERVAULT.APP', + 'REPLIT.APP', + 'SHIPTODAY.APP', + 'SPAWNBASE.APP', + 'SPRITES.APP', + 'STAGING.EXPO.APP', + 'STREAMLIT.APP', + 'TELEBIT.APP', + 'TYPEDREAM.APP', + 'UP.RAILWAY.APP', + 'VERCEL.APP', + 'WAL.APP', + 'WASMER.APP', + 'WEB.APP', + 'WINDSURF.APP', + 'WNEXT.APP', + 'ZEABUR.APP', + ], + 'wildcards' => [ + 'BEGET.APP', + 'DEVELOPER.APP', + 'HOSTED.APP', + 'MTLS.RUN.APP', + 'NORTHFLANK.APP', + 'PRIVATELINK.SNOWFLAKE.APP', + 'RUN.APP', + 'S.BRAVE.APP', + 'SNOWFLAKE.APP', + 'UPSUN.APP', + 'ZEROPS.APP', + ], +]; diff --git a/data/domain/public-suffix/APPLE.php b/data/domain/public-suffix/APPLE.php new file mode 100644 index 00000000..9868615b --- /dev/null +++ b/data/domain/public-suffix/APPLE.php @@ -0,0 +1,25 @@ + [], + 'rules' => [ + 'INT.APPLE', + ], + 'wildcards' => [ + 'AP-NORTH-1.R.CLOUD.INT.APPLE', + 'AP-SOUTH-1.R.CLOUD.INT.APPLE', + 'AP-SOUTH-2.R.CLOUD.INT.APPLE', + 'CLOUD.INT.APPLE', + 'EU-CENTRAL-1.R.CLOUD.INT.APPLE', + 'EU-NORTH-1.R.CLOUD.INT.APPLE', + 'R.CLOUD.INT.APPLE', + 'US-CENTRAL-1.R.CLOUD.INT.APPLE', + 'US-CENTRAL-2.R.CLOUD.INT.APPLE', + 'US-EAST-1.R.CLOUD.INT.APPLE', + 'US-EAST-2.R.CLOUD.INT.APPLE', + 'US-WEST-1.R.CLOUD.INT.APPLE', + 'US-WEST-2.R.CLOUD.INT.APPLE', + 'US-WEST-3.R.CLOUD.INT.APPLE', + ], +]; diff --git a/data/domain/public-suffix/AR.php b/data/domain/public-suffix/AR.php index 89524f6f..d81f872b 100644 --- a/data/domain/public-suffix/AR.php +++ b/data/domain/public-suffix/AR.php @@ -2,19 +2,23 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BET.AR', - 'COM.AR', - 'COOP.AR', - 'EDU.AR', - 'GOB.AR', - 'GOV.AR', - 'INT.AR', - 'MIL.AR', - 'MUSICA.AR', - 'MUTUAL.AR', - 'NET.AR', - 'ORG.AR', - 'SEG.AR', - 'SENASA.AR', - 'TUR.AR', + 'exceptions' => [], + 'rules' => [ + 'BET.AR', + 'COM.AR', + 'COOP.AR', + 'EDU.AR', + 'GOB.AR', + 'GOV.AR', + 'INT.AR', + 'MIL.AR', + 'MUSICA.AR', + 'MUTUAL.AR', + 'NET.AR', + 'ORG.AR', + 'SEG.AR', + 'SENASA.AR', + 'TUR.AR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ARPA.php b/data/domain/public-suffix/ARPA.php index a6425d88..2cc7c5de 100644 --- a/data/domain/public-suffix/ARPA.php +++ b/data/domain/public-suffix/ARPA.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'E164.ARPA', - 'HOME.ARPA', - 'IN-ADDR.ARPA', - 'IP6.ARPA', - 'IRIS.ARPA', - 'URI.ARPA', - 'URN.ARPA', + 'exceptions' => [], + 'rules' => [ + 'E164.ARPA', + 'HOME.ARPA', + 'IN-ADDR.ARPA', + 'IP6.ARPA', + 'IRIS.ARPA', + 'URI.ARPA', + 'URN.ARPA', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/AS.php b/data/domain/public-suffix/AS.php index 761c5d43..0b1625e8 100644 --- a/data/domain/public-suffix/AS.php +++ b/data/domain/public-suffix/AS.php @@ -2,5 +2,9 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.AS', + 'exceptions' => [], + 'rules' => [ + 'GOV.AS', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ASIA.php b/data/domain/public-suffix/ASIA.php new file mode 100644 index 00000000..59ed8e47 --- /dev/null +++ b/data/domain/public-suffix/ASIA.php @@ -0,0 +1,12 @@ + [], + 'rules' => [ + 'CLOUDNS.ASIA', + 'DAEMON.ASIA', + 'DIX.ASIA', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/AT.php b/data/domain/public-suffix/AT.php index 597a0fcc..aedf25c8 100644 --- a/data/domain/public-suffix/AT.php +++ b/data/domain/public-suffix/AT.php @@ -2,9 +2,33 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.AT', - 'STH.AC.AT', - 'CO.AT', - 'GV.AT', - 'OR.AT', + 'exceptions' => [], + 'rules' => [ + '123WEBSEITE.AT', + '12HP.AT', + '2IX.AT', + '4.AT', + '4LIMA.AT', + 'AC.AT', + 'BIZ.AT', + 'CO.AT', + 'FUTUREHOSTING.AT', + 'FUTUREMAILING.AT', + 'GV.AT', + 'INFO.AT', + 'LIMA-CITY.AT', + 'MY.AT', + 'MYSPREADSHOP.AT', + 'OR.AT', + 'PRIV.AT', + 'STH.AC.AT', + 'WIEN.FUNKFEUER.AT', + ], + 'wildcards' => [ + 'EX.FUTURECMS.AT', + 'EX.ORTSINFO.AT', + 'FUTURECMS.AT', + 'IN.FUTURECMS.AT', + 'KUNDEN.ORTSINFO.AT', + ], ]; diff --git a/data/domain/public-suffix/AU.php b/data/domain/public-suffix/AU.php index 80526740..bffccb6d 100644 --- a/data/domain/public-suffix/AU.php +++ b/data/domain/public-suffix/AU.php @@ -2,35 +2,42 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ASN.AU', - 'COM.AU', - 'EDU.AU', - 'GOV.AU', - 'ID.AU', - 'NET.AU', - 'ORG.AU', - 'CONF.AU', - 'OZ.AU', - 'ACT.AU', - 'NSW.AU', - 'NT.AU', - 'QLD.AU', - 'SA.AU', - 'TAS.AU', - 'VIC.AU', - 'WA.AU', - 'ACT.EDU.AU', - 'CATHOLIC.EDU.AU', - 'NSW.EDU.AU', - 'NT.EDU.AU', - 'QLD.EDU.AU', - 'SA.EDU.AU', - 'TAS.EDU.AU', - 'VIC.EDU.AU', - 'WA.EDU.AU', - 'QLD.GOV.AU', - 'SA.GOV.AU', - 'TAS.GOV.AU', - 'VIC.GOV.AU', - 'WA.GOV.AU', + 'exceptions' => [], + 'rules' => [ + 'ACT.AU', + 'ACT.EDU.AU', + 'ASN.AU', + 'CATHOLIC.EDU.AU', + 'COM.AU', + 'CONF.AU', + 'EDU.AU', + 'GOV.AU', + 'ID.AU', + 'MEL.CLOUDLETS.COM.AU', + 'MYSPREADSHOP.COM.AU', + 'NET.AU', + 'NSW.AU', + 'NSW.EDU.AU', + 'NT.AU', + 'NT.EDU.AU', + 'ORG.AU', + 'OZ.AU', + 'QLD.AU', + 'QLD.EDU.AU', + 'QLD.GOV.AU', + 'SA.AU', + 'SA.EDU.AU', + 'SA.GOV.AU', + 'TAS.AU', + 'TAS.EDU.AU', + 'TAS.GOV.AU', + 'VIC.AU', + 'VIC.EDU.AU', + 'VIC.GOV.AU', + 'VPS.HRSN.AU', + 'WA.AU', + 'WA.EDU.AU', + 'WA.GOV.AU', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/AW.php b/data/domain/public-suffix/AW.php index 315449a2..8159bbd4 100644 --- a/data/domain/public-suffix/AW.php +++ b/data/domain/public-suffix/AW.php @@ -2,5 +2,9 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.AW', + 'exceptions' => [], + 'rules' => [ + 'COM.AW', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/AWS.php b/data/domain/public-suffix/AWS.php new file mode 100644 index 00000000..b2ef108b --- /dev/null +++ b/data/domain/public-suffix/AWS.php @@ -0,0 +1,181 @@ + [], + 'rules' => [ + 'LABELING.AP-NORTHEAST-1.SAGEMAKER.AWS', + 'LABELING.AP-NORTHEAST-2.SAGEMAKER.AWS', + 'LABELING.AP-SOUTH-1.SAGEMAKER.AWS', + 'LABELING.AP-SOUTHEAST-1.SAGEMAKER.AWS', + 'LABELING.AP-SOUTHEAST-2.SAGEMAKER.AWS', + 'LABELING.CA-CENTRAL-1.SAGEMAKER.AWS', + 'LABELING.EU-CENTRAL-1.SAGEMAKER.AWS', + 'LABELING.EU-WEST-1.SAGEMAKER.AWS', + 'LABELING.EU-WEST-2.SAGEMAKER.AWS', + 'LABELING.US-EAST-1.SAGEMAKER.AWS', + 'LABELING.US-EAST-2.SAGEMAKER.AWS', + 'LABELING.US-WEST-2.SAGEMAKER.AWS', + 'LAMBDA-URL.AF-SOUTH-1.ON.AWS', + 'LAMBDA-URL.AP-EAST-1.ON.AWS', + 'LAMBDA-URL.AP-NORTHEAST-1.ON.AWS', + 'LAMBDA-URL.AP-NORTHEAST-2.ON.AWS', + 'LAMBDA-URL.AP-NORTHEAST-3.ON.AWS', + 'LAMBDA-URL.AP-SOUTH-1.ON.AWS', + 'LAMBDA-URL.AP-SOUTHEAST-1.ON.AWS', + 'LAMBDA-URL.AP-SOUTHEAST-2.ON.AWS', + 'LAMBDA-URL.AP-SOUTHEAST-3.ON.AWS', + 'LAMBDA-URL.CA-CENTRAL-1.ON.AWS', + 'LAMBDA-URL.EU-CENTRAL-1.ON.AWS', + 'LAMBDA-URL.EU-NORTH-1.ON.AWS', + 'LAMBDA-URL.EU-SOUTH-1.ON.AWS', + 'LAMBDA-URL.EU-WEST-1.ON.AWS', + 'LAMBDA-URL.EU-WEST-2.ON.AWS', + 'LAMBDA-URL.EU-WEST-3.ON.AWS', + 'LAMBDA-URL.ME-SOUTH-1.ON.AWS', + 'LAMBDA-URL.SA-EAST-1.ON.AWS', + 'LAMBDA-URL.US-EAST-1.ON.AWS', + 'LAMBDA-URL.US-EAST-2.ON.AWS', + 'LAMBDA-URL.US-WEST-1.ON.AWS', + 'LAMBDA-URL.US-WEST-2.ON.AWS', + 'NOTEBOOK-FIPS.CA-CENTRAL-1.SAGEMAKER.AWS', + 'NOTEBOOK-FIPS.CA-WEST-1.SAGEMAKER.AWS', + 'NOTEBOOK-FIPS.US-EAST-1.SAGEMAKER.AWS', + 'NOTEBOOK-FIPS.US-EAST-2.SAGEMAKER.AWS', + 'NOTEBOOK-FIPS.US-GOV-EAST-1.SAGEMAKER.AWS', + 'NOTEBOOK-FIPS.US-GOV-WEST-1.SAGEMAKER.AWS', + 'NOTEBOOK-FIPS.US-WEST-1.SAGEMAKER.AWS', + 'NOTEBOOK-FIPS.US-WEST-2.SAGEMAKER.AWS', + 'NOTEBOOK.AF-SOUTH-1.SAGEMAKER.AWS', + 'NOTEBOOK.AP-EAST-1.SAGEMAKER.AWS', + 'NOTEBOOK.AP-NORTHEAST-1.SAGEMAKER.AWS', + 'NOTEBOOK.AP-NORTHEAST-2.SAGEMAKER.AWS', + 'NOTEBOOK.AP-NORTHEAST-3.SAGEMAKER.AWS', + 'NOTEBOOK.AP-SOUTH-1.SAGEMAKER.AWS', + 'NOTEBOOK.AP-SOUTH-2.SAGEMAKER.AWS', + 'NOTEBOOK.AP-SOUTHEAST-1.SAGEMAKER.AWS', + 'NOTEBOOK.AP-SOUTHEAST-2.SAGEMAKER.AWS', + 'NOTEBOOK.AP-SOUTHEAST-3.SAGEMAKER.AWS', + 'NOTEBOOK.AP-SOUTHEAST-4.SAGEMAKER.AWS', + 'NOTEBOOK.CA-CENTRAL-1.SAGEMAKER.AWS', + 'NOTEBOOK.CA-WEST-1.SAGEMAKER.AWS', + 'NOTEBOOK.EU-CENTRAL-1.SAGEMAKER.AWS', + 'NOTEBOOK.EU-CENTRAL-2.SAGEMAKER.AWS', + 'NOTEBOOK.EU-NORTH-1.SAGEMAKER.AWS', + 'NOTEBOOK.EU-SOUTH-1.SAGEMAKER.AWS', + 'NOTEBOOK.EU-SOUTH-2.SAGEMAKER.AWS', + 'NOTEBOOK.EU-WEST-1.SAGEMAKER.AWS', + 'NOTEBOOK.EU-WEST-2.SAGEMAKER.AWS', + 'NOTEBOOK.EU-WEST-3.SAGEMAKER.AWS', + 'NOTEBOOK.IL-CENTRAL-1.SAGEMAKER.AWS', + 'NOTEBOOK.ME-CENTRAL-1.SAGEMAKER.AWS', + 'NOTEBOOK.ME-SOUTH-1.SAGEMAKER.AWS', + 'NOTEBOOK.SA-EAST-1.SAGEMAKER.AWS', + 'NOTEBOOK.US-EAST-1.SAGEMAKER.AWS', + 'NOTEBOOK.US-EAST-2.SAGEMAKER.AWS', + 'NOTEBOOK.US-GOV-EAST-1.SAGEMAKER.AWS', + 'NOTEBOOK.US-GOV-WEST-1.SAGEMAKER.AWS', + 'NOTEBOOK.US-WEST-1.SAGEMAKER.AWS', + 'NOTEBOOK.US-WEST-2.SAGEMAKER.AWS', + 'STUDIO-FIPS.US-GOV-EAST-1.SAGEMAKER.AWS', + 'STUDIO-FIPS.US-GOV-WEST-1.SAGEMAKER.AWS', + 'STUDIO.AF-SOUTH-1.SAGEMAKER.AWS', + 'STUDIO.AP-EAST-1.SAGEMAKER.AWS', + 'STUDIO.AP-NORTHEAST-1.SAGEMAKER.AWS', + 'STUDIO.AP-NORTHEAST-2.SAGEMAKER.AWS', + 'STUDIO.AP-NORTHEAST-3.SAGEMAKER.AWS', + 'STUDIO.AP-SOUTH-1.SAGEMAKER.AWS', + 'STUDIO.AP-SOUTHEAST-1.SAGEMAKER.AWS', + 'STUDIO.AP-SOUTHEAST-2.SAGEMAKER.AWS', + 'STUDIO.AP-SOUTHEAST-3.SAGEMAKER.AWS', + 'STUDIO.CA-CENTRAL-1.SAGEMAKER.AWS', + 'STUDIO.EU-CENTRAL-1.SAGEMAKER.AWS', + 'STUDIO.EU-CENTRAL-2.SAGEMAKER.AWS', + 'STUDIO.EU-NORTH-1.SAGEMAKER.AWS', + 'STUDIO.EU-SOUTH-1.SAGEMAKER.AWS', + 'STUDIO.EU-SOUTH-2.SAGEMAKER.AWS', + 'STUDIO.EU-WEST-1.SAGEMAKER.AWS', + 'STUDIO.EU-WEST-2.SAGEMAKER.AWS', + 'STUDIO.EU-WEST-3.SAGEMAKER.AWS', + 'STUDIO.IL-CENTRAL-1.SAGEMAKER.AWS', + 'STUDIO.ME-CENTRAL-1.SAGEMAKER.AWS', + 'STUDIO.ME-SOUTH-1.SAGEMAKER.AWS', + 'STUDIO.SA-EAST-1.SAGEMAKER.AWS', + 'STUDIO.US-EAST-1.SAGEMAKER.AWS', + 'STUDIO.US-EAST-2.SAGEMAKER.AWS', + 'STUDIO.US-GOV-EAST-1.SAGEMAKER.AWS', + 'STUDIO.US-GOV-WEST-1.SAGEMAKER.AWS', + 'STUDIO.US-WEST-1.SAGEMAKER.AWS', + 'STUDIO.US-WEST-2.SAGEMAKER.AWS', + 'TRANSFER-WEBAPP-FIPS.US-GOV-EAST-1.ON.AWS', + 'TRANSFER-WEBAPP-FIPS.US-GOV-WEST-1.ON.AWS', + 'TRANSFER-WEBAPP.AF-SOUTH-1.ON.AWS', + 'TRANSFER-WEBAPP.AP-EAST-1.ON.AWS', + 'TRANSFER-WEBAPP.AP-NORTHEAST-1.ON.AWS', + 'TRANSFER-WEBAPP.AP-NORTHEAST-2.ON.AWS', + 'TRANSFER-WEBAPP.AP-NORTHEAST-3.ON.AWS', + 'TRANSFER-WEBAPP.AP-SOUTH-1.ON.AWS', + 'TRANSFER-WEBAPP.AP-SOUTH-2.ON.AWS', + 'TRANSFER-WEBAPP.AP-SOUTHEAST-1.ON.AWS', + 'TRANSFER-WEBAPP.AP-SOUTHEAST-2.ON.AWS', + 'TRANSFER-WEBAPP.AP-SOUTHEAST-3.ON.AWS', + 'TRANSFER-WEBAPP.AP-SOUTHEAST-4.ON.AWS', + 'TRANSFER-WEBAPP.AP-SOUTHEAST-5.ON.AWS', + 'TRANSFER-WEBAPP.AP-SOUTHEAST-7.ON.AWS', + 'TRANSFER-WEBAPP.CA-CENTRAL-1.ON.AWS', + 'TRANSFER-WEBAPP.CA-WEST-1.ON.AWS', + 'TRANSFER-WEBAPP.EU-CENTRAL-1.ON.AWS', + 'TRANSFER-WEBAPP.EU-CENTRAL-2.ON.AWS', + 'TRANSFER-WEBAPP.EU-NORTH-1.ON.AWS', + 'TRANSFER-WEBAPP.EU-SOUTH-1.ON.AWS', + 'TRANSFER-WEBAPP.EU-SOUTH-2.ON.AWS', + 'TRANSFER-WEBAPP.EU-WEST-1.ON.AWS', + 'TRANSFER-WEBAPP.EU-WEST-2.ON.AWS', + 'TRANSFER-WEBAPP.EU-WEST-3.ON.AWS', + 'TRANSFER-WEBAPP.IL-CENTRAL-1.ON.AWS', + 'TRANSFER-WEBAPP.ME-CENTRAL-1.ON.AWS', + 'TRANSFER-WEBAPP.ME-SOUTH-1.ON.AWS', + 'TRANSFER-WEBAPP.MX-CENTRAL-1.ON.AWS', + 'TRANSFER-WEBAPP.SA-EAST-1.ON.AWS', + 'TRANSFER-WEBAPP.US-EAST-1.ON.AWS', + 'TRANSFER-WEBAPP.US-EAST-2.ON.AWS', + 'TRANSFER-WEBAPP.US-GOV-EAST-1.ON.AWS', + 'TRANSFER-WEBAPP.US-GOV-WEST-1.ON.AWS', + 'TRANSFER-WEBAPP.US-WEST-1.ON.AWS', + 'TRANSFER-WEBAPP.US-WEST-2.ON.AWS', + ], + 'wildcards' => [ + 'AIRFLOW.AF-SOUTH-1.ON.AWS', + 'AIRFLOW.AP-EAST-1.ON.AWS', + 'AIRFLOW.AP-NORTHEAST-1.ON.AWS', + 'AIRFLOW.AP-NORTHEAST-2.ON.AWS', + 'AIRFLOW.AP-NORTHEAST-3.ON.AWS', + 'AIRFLOW.AP-SOUTH-1.ON.AWS', + 'AIRFLOW.AP-SOUTH-2.ON.AWS', + 'AIRFLOW.AP-SOUTHEAST-1.ON.AWS', + 'AIRFLOW.AP-SOUTHEAST-2.ON.AWS', + 'AIRFLOW.AP-SOUTHEAST-3.ON.AWS', + 'AIRFLOW.AP-SOUTHEAST-4.ON.AWS', + 'AIRFLOW.AP-SOUTHEAST-5.ON.AWS', + 'AIRFLOW.CA-CENTRAL-1.ON.AWS', + 'AIRFLOW.CA-WEST-1.ON.AWS', + 'AIRFLOW.EU-CENTRAL-1.ON.AWS', + 'AIRFLOW.EU-CENTRAL-2.ON.AWS', + 'AIRFLOW.EU-NORTH-1.ON.AWS', + 'AIRFLOW.EU-SOUTH-1.ON.AWS', + 'AIRFLOW.EU-SOUTH-2.ON.AWS', + 'AIRFLOW.EU-WEST-1.ON.AWS', + 'AIRFLOW.EU-WEST-2.ON.AWS', + 'AIRFLOW.EU-WEST-3.ON.AWS', + 'AIRFLOW.IL-CENTRAL-1.ON.AWS', + 'AIRFLOW.ME-CENTRAL-1.ON.AWS', + 'AIRFLOW.ME-SOUTH-1.ON.AWS', + 'AIRFLOW.SA-EAST-1.ON.AWS', + 'AIRFLOW.US-EAST-1.ON.AWS', + 'AIRFLOW.US-EAST-2.ON.AWS', + 'AIRFLOW.US-WEST-1.ON.AWS', + 'AIRFLOW.US-WEST-2.ON.AWS', + 'EXPERIMENTS.SAGEMAKER.AWS', + 'PRIVATE.REPOST.AWS', + ], +]; diff --git a/data/domain/public-suffix/AZ.php b/data/domain/public-suffix/AZ.php index 66d394f5..e30c3caa 100644 --- a/data/domain/public-suffix/AZ.php +++ b/data/domain/public-suffix/AZ.php @@ -2,17 +2,21 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BIZ.AZ', - 'CO.AZ', - 'COM.AZ', - 'EDU.AZ', - 'GOV.AZ', - 'INFO.AZ', - 'INT.AZ', - 'MIL.AZ', - 'NAME.AZ', - 'NET.AZ', - 'ORG.AZ', - 'PP.AZ', - 'PRO.AZ', + 'exceptions' => [], + 'rules' => [ + 'BIZ.AZ', + 'CO.AZ', + 'COM.AZ', + 'EDU.AZ', + 'GOV.AZ', + 'INFO.AZ', + 'INT.AZ', + 'MIL.AZ', + 'NAME.AZ', + 'NET.AZ', + 'ORG.AZ', + 'PP.AZ', + 'PRO.AZ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BA.php b/data/domain/public-suffix/BA.php index 068e2419..9147544c 100644 --- a/data/domain/public-suffix/BA.php +++ b/data/domain/public-suffix/BA.php @@ -2,10 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.BA', - 'EDU.BA', - 'GOV.BA', - 'MIL.BA', - 'NET.BA', - 'ORG.BA', + 'exceptions' => [], + 'rules' => [ + 'COM.BA', + 'EDU.BA', + 'GOV.BA', + 'MIL.BA', + 'NET.BA', + 'ORG.BA', + 'RS.BA', + 'SHOP.BRENDLY.BA', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BASKETBALL.php b/data/domain/public-suffix/BASKETBALL.php new file mode 100644 index 00000000..00e8ec9e --- /dev/null +++ b/data/domain/public-suffix/BASKETBALL.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'AUS.BASKETBALL', + 'NZ.BASKETBALL', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/BB.php b/data/domain/public-suffix/BB.php index c64619c3..ded18f84 100644 --- a/data/domain/public-suffix/BB.php +++ b/data/domain/public-suffix/BB.php @@ -2,14 +2,18 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BIZ.BB', - 'CO.BB', - 'COM.BB', - 'EDU.BB', - 'GOV.BB', - 'INFO.BB', - 'NET.BB', - 'ORG.BB', - 'STORE.BB', - 'TV.BB', + 'exceptions' => [], + 'rules' => [ + 'BIZ.BB', + 'CO.BB', + 'COM.BB', + 'EDU.BB', + 'GOV.BB', + 'INFO.BB', + 'NET.BB', + 'ORG.BB', + 'STORE.BB', + 'TV.BB', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BD.php b/data/domain/public-suffix/BD.php index c5fba9a7..45b88cfc 100644 --- a/data/domain/public-suffix/BD.php +++ b/data/domain/public-suffix/BD.php @@ -2,18 +2,22 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.BD', - 'AI.BD', - 'CO.BD', - 'COM.BD', - 'EDU.BD', - 'GOV.BD', - 'ID.BD', - 'INFO.BD', - 'IT.BD', - 'MIL.BD', - 'NET.BD', - 'ORG.BD', - 'SCH.BD', - 'TV.BD', + 'exceptions' => [], + 'rules' => [ + 'AC.BD', + 'AI.BD', + 'CO.BD', + 'COM.BD', + 'EDU.BD', + 'GOV.BD', + 'ID.BD', + 'INFO.BD', + 'IT.BD', + 'MIL.BD', + 'NET.BD', + 'ORG.BD', + 'SCH.BD', + 'TV.BD', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BE.php b/data/domain/public-suffix/BE.php index 2d74cf68..adf2641f 100644 --- a/data/domain/public-suffix/BE.php +++ b/data/domain/public-suffix/BE.php @@ -2,5 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.BE', + 'exceptions' => [], + 'rules' => [ + '123WEBSITE.BE', + 'AC.BE', + 'CLOUD.INTERHOSTSOLUTIONS.BE', + 'CLOUDNS.BE', + 'EZPROXY.KULEUVEN.BE', + 'MYSPREADSHOP.BE', + 'WEBHOSTING.BE', + ], + 'wildcards' => [ + 'TRANSURL.BE', + ], ]; diff --git a/data/domain/public-suffix/BF.php b/data/domain/public-suffix/BF.php index 05036f65..fc0a6214 100644 --- a/data/domain/public-suffix/BF.php +++ b/data/domain/public-suffix/BF.php @@ -2,5 +2,9 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.BF', + 'exceptions' => [], + 'rules' => [ + 'GOV.BF', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BG.php b/data/domain/public-suffix/BG.php index 5c6e49fb..6deaacb1 100644 --- a/data/domain/public-suffix/BG.php +++ b/data/domain/public-suffix/BG.php @@ -2,40 +2,45 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - '0.BG', - '1.BG', - '2.BG', - '3.BG', - '4.BG', - '5.BG', - '6.BG', - '7.BG', - '8.BG', - '9.BG', - 'A.BG', - 'B.BG', - 'C.BG', - 'D.BG', - 'E.BG', - 'F.BG', - 'G.BG', - 'H.BG', - 'I.BG', - 'J.BG', - 'K.BG', - 'L.BG', - 'M.BG', - 'N.BG', - 'O.BG', - 'P.BG', - 'Q.BG', - 'R.BG', - 'S.BG', - 'T.BG', - 'U.BG', - 'V.BG', - 'W.BG', - 'X.BG', - 'Y.BG', - 'Z.BG', + 'exceptions' => [], + 'rules' => [ + '0.BG', + '1.BG', + '2.BG', + '3.BG', + '4.BG', + '5.BG', + '6.BG', + '7.BG', + '8.BG', + '9.BG', + 'A.BG', + 'B.BG', + 'BARSY.BG', + 'C.BG', + 'D.BG', + 'E.BG', + 'F.BG', + 'G.BG', + 'H.BG', + 'I.BG', + 'J.BG', + 'K.BG', + 'L.BG', + 'M.BG', + 'N.BG', + 'O.BG', + 'P.BG', + 'Q.BG', + 'R.BG', + 'S.BG', + 'T.BG', + 'U.BG', + 'V.BG', + 'W.BG', + 'X.BG', + 'Y.BG', + 'Z.BG', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BH.php b/data/domain/public-suffix/BH.php index 78d8f943..9787ff97 100644 --- a/data/domain/public-suffix/BH.php +++ b/data/domain/public-suffix/BH.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.BH', - 'EDU.BH', - 'GOV.BH', - 'NET.BH', - 'ORG.BH', + 'exceptions' => [], + 'rules' => [ + 'COM.BH', + 'EDU.BH', + 'GOV.BH', + 'NET.BH', + 'ORG.BH', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BI.php b/data/domain/public-suffix/BI.php index c143c5d0..fdcfb998 100644 --- a/data/domain/public-suffix/BI.php +++ b/data/domain/public-suffix/BI.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.BI', - 'COM.BI', - 'EDU.BI', - 'OR.BI', - 'ORG.BI', + 'exceptions' => [], + 'rules' => [ + 'CO.BI', + 'COM.BI', + 'EDU.BI', + 'OR.BI', + 'ORG.BI', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BIZ.php b/data/domain/public-suffix/BIZ.php new file mode 100644 index 00000000..6b304b37 --- /dev/null +++ b/data/domain/public-suffix/BIZ.php @@ -0,0 +1,25 @@ + [], + 'rules' => [ + 'ACTIVETRAIL.BIZ', + 'CLOUD-IP.BIZ', + 'CLOUDNS.BIZ', + 'DSCLOUD.BIZ', + 'DYNDNS.BIZ', + 'FOR-BETTER.BIZ', + 'FOR-MORE.BIZ', + 'FOR-SOME.BIZ', + 'FOR-THE.BIZ', + 'JOZI.BIZ', + 'MMAFAN.BIZ', + 'MYFTP.BIZ', + 'NO-IP.BIZ', + 'ORX.BIZ', + 'SELFIP.BIZ', + 'WEBHOP.BIZ', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/BJ.php b/data/domain/public-suffix/BJ.php index e101a9a9..62d45340 100644 --- a/data/domain/public-suffix/BJ.php +++ b/data/domain/public-suffix/BJ.php @@ -2,24 +2,28 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AFRICA.BJ', - 'AGRO.BJ', - 'ARCHITECTES.BJ', - 'ASSUR.BJ', - 'AVOCATS.BJ', - 'CO.BJ', - 'COM.BJ', - 'ECO.BJ', - 'ECONO.BJ', - 'EDU.BJ', - 'INFO.BJ', - 'LOISIRS.BJ', - 'MONEY.BJ', - 'NET.BJ', - 'ORG.BJ', - 'OTE.BJ', - 'RESTAURANT.BJ', - 'RESTO.BJ', - 'TOURISM.BJ', - 'UNIV.BJ', + 'exceptions' => [], + 'rules' => [ + 'AFRICA.BJ', + 'AGRO.BJ', + 'ARCHITECTES.BJ', + 'ASSUR.BJ', + 'AVOCATS.BJ', + 'CO.BJ', + 'COM.BJ', + 'ECO.BJ', + 'ECONO.BJ', + 'EDU.BJ', + 'INFO.BJ', + 'LOISIRS.BJ', + 'MONEY.BJ', + 'NET.BJ', + 'ORG.BJ', + 'OTE.BJ', + 'RESTAURANT.BJ', + 'RESTO.BJ', + 'TOURISM.BJ', + 'UNIV.BJ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BM.php b/data/domain/public-suffix/BM.php index ad277da9..6619d3eb 100644 --- a/data/domain/public-suffix/BM.php +++ b/data/domain/public-suffix/BM.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.BM', - 'EDU.BM', - 'GOV.BM', - 'NET.BM', - 'ORG.BM', + 'exceptions' => [], + 'rules' => [ + 'COM.BM', + 'EDU.BM', + 'GOV.BM', + 'NET.BM', + 'ORG.BM', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BN.php b/data/domain/public-suffix/BN.php index 7ef847e1..58421b4a 100644 --- a/data/domain/public-suffix/BN.php +++ b/data/domain/public-suffix/BN.php @@ -2,9 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.BN', - 'EDU.BN', - 'GOV.BN', - 'NET.BN', - 'ORG.BN', + 'exceptions' => [], + 'rules' => [ + 'CO.BN', + 'COM.BN', + 'EDU.BN', + 'GOV.BN', + 'NET.BN', + 'ORG.BN', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BO.php b/data/domain/public-suffix/BO.php index 11fa228d..b95bc50f 100644 --- a/data/domain/public-suffix/BO.php +++ b/data/domain/public-suffix/BO.php @@ -2,45 +2,49 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.BO', - 'EDU.BO', - 'GOB.BO', - 'INT.BO', - 'MIL.BO', - 'NET.BO', - 'ORG.BO', - 'TV.BO', - 'WEB.BO', - 'ACADEMIA.BO', - 'AGRO.BO', - 'ARTE.BO', - 'BLOG.BO', - 'BOLIVIA.BO', - 'CIENCIA.BO', - 'COOPERATIVA.BO', - 'DEMOCRACIA.BO', - 'DEPORTE.BO', - 'ECOLOGIA.BO', - 'ECONOMIA.BO', - 'EMPRESA.BO', - 'INDIGENA.BO', - 'INDUSTRIA.BO', - 'INFO.BO', - 'MEDICINA.BO', - 'MOVIMIENTO.BO', - 'MUSICA.BO', - 'NATURAL.BO', - 'NOMBRE.BO', - 'NOTICIAS.BO', - 'PATRIA.BO', - 'PLURINACIONAL.BO', - 'POLITICA.BO', - 'PROFESIONAL.BO', - 'PUEBLO.BO', - 'REVISTA.BO', - 'SALUD.BO', - 'TECNOLOGIA.BO', - 'TKSAT.BO', - 'TRANSPORTE.BO', - 'WIKI.BO', + 'exceptions' => [], + 'rules' => [ + 'ACADEMIA.BO', + 'AGRO.BO', + 'ARTE.BO', + 'BLOG.BO', + 'BOLIVIA.BO', + 'CIENCIA.BO', + 'COM.BO', + 'COOPERATIVA.BO', + 'DEMOCRACIA.BO', + 'DEPORTE.BO', + 'ECOLOGIA.BO', + 'ECONOMIA.BO', + 'EDU.BO', + 'EMPRESA.BO', + 'GOB.BO', + 'INDIGENA.BO', + 'INDUSTRIA.BO', + 'INFO.BO', + 'INT.BO', + 'MEDICINA.BO', + 'MIL.BO', + 'MOVIMIENTO.BO', + 'MUSICA.BO', + 'NATURAL.BO', + 'NET.BO', + 'NOMBRE.BO', + 'NOTICIAS.BO', + 'ORG.BO', + 'PATRIA.BO', + 'PLURINACIONAL.BO', + 'POLITICA.BO', + 'PROFESIONAL.BO', + 'PUEBLO.BO', + 'REVISTA.BO', + 'SALUD.BO', + 'TECNOLOGIA.BO', + 'TKSAT.BO', + 'TRANSPORTE.BO', + 'TV.BO', + 'WEB.BO', + 'WIKI.BO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BR.php b/data/domain/public-suffix/BR.php index aa6d0188..6a71634f 100644 --- a/data/domain/public-suffix/BR.php +++ b/data/domain/public-suffix/BR.php @@ -2,178 +2,212 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - '9GUACU.BR', - 'ABC.BR', - 'ADM.BR', - 'ADV.BR', - 'AGR.BR', - 'AJU.BR', - 'AM.BR', - 'ANANI.BR', - 'APARECIDA.BR', - 'API.BR', - 'APP.BR', - 'ARQ.BR', - 'ART.BR', - 'ATO.BR', - 'B.BR', - 'BARUERI.BR', - 'BELEM.BR', - 'BET.BR', - 'BHZ.BR', - 'BIB.BR', - 'BIO.BR', - 'BLOG.BR', - 'BMD.BR', - 'BOAVISTA.BR', - 'BSB.BR', - 'CAMPINAGRANDE.BR', - 'CAMPINAS.BR', - 'CAXIAS.BR', - 'CIM.BR', - 'CNG.BR', - 'CNT.BR', - 'COM.BR', - 'CONTAGEM.BR', - 'COOP.BR', - 'COZ.BR', - 'CRI.BR', - 'CUIABA.BR', - 'CURITIBA.BR', - 'DEF.BR', - 'DES.BR', - 'DET.BR', - 'DEV.BR', - 'ECN.BR', - 'ECO.BR', - 'EDU.BR', - 'EMP.BR', - 'ENF.BR', - 'ENG.BR', - 'ESP.BR', - 'ETC.BR', - 'ETI.BR', - 'FAR.BR', - 'FEIRA.BR', - 'FLOG.BR', - 'FLORIPA.BR', - 'FM.BR', - 'FND.BR', - 'FORTAL.BR', - 'FOT.BR', - 'FOZ.BR', - 'FST.BR', - 'G12.BR', - 'GEO.BR', - 'GGF.BR', - 'GOIANIA.BR', - 'GOV.BR', - 'AC.GOV.BR', - 'AL.GOV.BR', - 'AM.GOV.BR', - 'AP.GOV.BR', - 'BA.GOV.BR', - 'CE.GOV.BR', - 'DF.GOV.BR', - 'ES.GOV.BR', - 'GO.GOV.BR', - 'MA.GOV.BR', - 'MG.GOV.BR', - 'MS.GOV.BR', - 'MT.GOV.BR', - 'PA.GOV.BR', - 'PB.GOV.BR', - 'PE.GOV.BR', - 'PI.GOV.BR', - 'PR.GOV.BR', - 'RJ.GOV.BR', - 'RN.GOV.BR', - 'RO.GOV.BR', - 'RR.GOV.BR', - 'RS.GOV.BR', - 'SC.GOV.BR', - 'SE.GOV.BR', - 'SP.GOV.BR', - 'TO.GOV.BR', - 'GRU.BR', - 'IA.BR', - 'IMB.BR', - 'IND.BR', - 'INF.BR', - 'JAB.BR', - 'JAMPA.BR', - 'JDF.BR', - 'JOINVILLE.BR', - 'JOR.BR', - 'JUS.BR', - 'LEG.BR', - 'LEILAO.BR', - 'LEL.BR', - 'LOG.BR', - 'LONDRINA.BR', - 'MACAPA.BR', - 'MACEIO.BR', - 'MANAUS.BR', - 'MARINGA.BR', - 'MAT.BR', - 'MED.BR', - 'MIL.BR', - 'MORENA.BR', - 'MP.BR', - 'MUS.BR', - 'NATAL.BR', - 'NET.BR', - 'NITEROI.BR', - 'NOM.BR', - 'NOT.BR', - 'NTR.BR', - 'ODO.BR', - 'ONG.BR', - 'ORG.BR', - 'OSASCO.BR', - 'PALMAS.BR', - 'POA.BR', - 'PPG.BR', - 'PRO.BR', - 'PSC.BR', - 'PSI.BR', - 'PVH.BR', - 'QSL.BR', - 'RADIO.BR', - 'REC.BR', - 'RECIFE.BR', - 'REP.BR', - 'RIBEIRAO.BR', - 'RIO.BR', - 'RIOBRANCO.BR', - 'RIOPRETO.BR', - 'SALVADOR.BR', - 'SAMPA.BR', - 'SANTAMARIA.BR', - 'SANTOANDRE.BR', - 'SAOBERNARDO.BR', - 'SAOGONCA.BR', - 'SEG.BR', - 'SJC.BR', - 'SLG.BR', - 'SLZ.BR', - 'SOCIAL.BR', - 'SOROCABA.BR', - 'SRV.BR', - 'TAXI.BR', - 'TC.BR', - 'TEC.BR', - 'TEO.BR', - 'THE.BR', - 'TMP.BR', - 'TRD.BR', - 'TUR.BR', - 'TV.BR', - 'UDI.BR', - 'VET.BR', - 'VIX.BR', - 'VLOG.BR', - 'WIKI.BR', - 'XYZ.BR', - 'ZLG.BR', + 'exceptions' => [], + 'rules' => [ + '9GUACU.BR', + 'ABC.BR', + 'AC.GOV.BR', + 'AC.LEG.BR', + 'ADM.BR', + 'ADV.BR', + 'AGR.BR', + 'AJU.BR', + 'AL.GOV.BR', + 'AL.LEG.BR', + 'AM.BR', + 'AM.GOV.BR', + 'AM.LEG.BR', + 'ANANI.BR', + 'AP.GOV.BR', + 'AP.LEG.BR', + 'APARECIDA.BR', + 'API.BR', + 'APP.BR', + 'ARQ.BR', + 'ART.BR', + 'ATO.BR', + 'B.BR', + 'BA.GOV.BR', + 'BA.LEG.BR', + 'BARUERI.BR', + 'BELEM.BR', + 'BET.BR', + 'BHZ.BR', + 'BIB.BR', + 'BIO.BR', + 'BLOG.BR', + 'BMD.BR', + 'BOAVISTA.BR', + 'BSB.BR', + 'CAMPINAGRANDE.BR', + 'CAMPINAS.BR', + 'CAXIAS.BR', + 'CE.GOV.BR', + 'CE.LEG.BR', + 'CIM.BR', + 'CNG.BR', + 'CNT.BR', + 'COM.BR', + 'CONTAGEM.BR', + 'COOP.BR', + 'COZ.BR', + 'CRI.BR', + 'CUIABA.BR', + 'CURITIBA.BR', + 'DEF.BR', + 'DES.BR', + 'DET.BR', + 'DEV.BR', + 'DF.GOV.BR', + 'DF.LEG.BR', + 'ECN.BR', + 'ECO.BR', + 'EDU.BR', + 'EMP.BR', + 'ENF.BR', + 'ENG.BR', + 'ES.GOV.BR', + 'ES.LEG.BR', + 'ESP.BR', + 'ETC.BR', + 'ETI.BR', + 'FAR.BR', + 'FEIRA.BR', + 'FLOG.BR', + 'FLORIPA.BR', + 'FM.BR', + 'FND.BR', + 'FORTAL.BR', + 'FOT.BR', + 'FOZ.BR', + 'FST.BR', + 'G12.BR', + 'GEO.BR', + 'GGF.BR', + 'GO.GOV.BR', + 'GO.LEG.BR', + 'GOIANIA.BR', + 'GOV.BR', + 'GRU.BR', + 'IA.BR', + 'IMB.BR', + 'IND.BR', + 'INF.BR', + 'JAB.BR', + 'JAMPA.BR', + 'JDF.BR', + 'JOINVILLE.BR', + 'JOR.BR', + 'JUS.BR', + 'LEG.BR', + 'LEILAO.BR', + 'LEL.BR', + 'LOG.BR', + 'LONDRINA.BR', + 'MA.GOV.BR', + 'MA.LEG.BR', + 'MACAPA.BR', + 'MACEIO.BR', + 'MANAUS.BR', + 'MARINGA.BR', + 'MAT.BR', + 'MED.BR', + 'MG.GOV.BR', + 'MG.LEG.BR', + 'MIL.BR', + 'MORENA.BR', + 'MP.BR', + 'MS.GOV.BR', + 'MS.LEG.BR', + 'MT.GOV.BR', + 'MT.LEG.BR', + 'MUS.BR', + 'NATAL.BR', + 'NET.BR', + 'NITEROI.BR', + 'NOT.BR', + 'NTR.BR', + 'ODO.BR', + 'ONG.BR', + 'ORG.BR', + 'OSASCO.BR', + 'PA.GOV.BR', + 'PA.LEG.BR', + 'PALMAS.BR', + 'PB.GOV.BR', + 'PB.LEG.BR', + 'PE.GOV.BR', + 'PE.LEG.BR', + 'PI.GOV.BR', + 'PI.LEG.BR', + 'POA.BR', + 'PPG.BR', + 'PR.GOV.BR', + 'PR.LEG.BR', + 'PRO.BR', + 'PSC.BR', + 'PSI.BR', + 'PVH.BR', + 'QSL.BR', + 'RADIO.BR', + 'REC.BR', + 'RECIFE.BR', + 'REP.BR', + 'RIBEIRAO.BR', + 'RIO.BR', + 'RIOBRANCO.BR', + 'RIOPRETO.BR', + 'RJ.GOV.BR', + 'RJ.LEG.BR', + 'RN.GOV.BR', + 'RN.LEG.BR', + 'RO.GOV.BR', + 'RO.LEG.BR', + 'RR.GOV.BR', + 'RR.LEG.BR', + 'RS.GOV.BR', + 'RS.LEG.BR', + 'SALVADOR.BR', + 'SAMPA.BR', + 'SANTAMARIA.BR', + 'SANTOANDRE.BR', + 'SAOBERNARDO.BR', + 'SAOGONCA.BR', + 'SC.GOV.BR', + 'SC.LEG.BR', + 'SE.GOV.BR', + 'SE.LEG.BR', + 'SEG.BR', + 'SIMPLESITE.COM.BR', + 'SJC.BR', + 'SLG.BR', + 'SLZ.BR', + 'SOCIAL.BR', + 'SOROCABA.BR', + 'SP.GOV.BR', + 'SP.LEG.BR', + 'SRV.BR', + 'TAXI.BR', + 'TC.BR', + 'TCHE.BR', + 'TEC.BR', + 'TEO.BR', + 'THE.BR', + 'TMP.BR', + 'TO.GOV.BR', + 'TO.LEG.BR', + 'TRD.BR', + 'TUR.BR', + 'TV.BR', + 'UDI.BR', + 'VET.BR', + 'VIX.BR', + 'VLOG.BR', + 'WIKI.BR', + 'XYZ.BR', + 'ZLG.BR', + ], + 'wildcards' => [ + 'NOM.BR', + ], ]; diff --git a/data/domain/public-suffix/BS.php b/data/domain/public-suffix/BS.php index fc6ac138..e8299ef4 100644 --- a/data/domain/public-suffix/BS.php +++ b/data/domain/public-suffix/BS.php @@ -2,9 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.BS', - 'EDU.BS', - 'GOV.BS', - 'NET.BS', - 'ORG.BS', + 'exceptions' => [], + 'rules' => [ + 'COM.BS', + 'EDU.BS', + 'GOV.BS', + 'NET.BS', + 'ORG.BS', + 'WE.BS', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BT.php b/data/domain/public-suffix/BT.php index 1b5bb683..986041df 100644 --- a/data/domain/public-suffix/BT.php +++ b/data/domain/public-suffix/BT.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.BT', - 'EDU.BT', - 'GOV.BT', - 'NET.BT', - 'ORG.BT', + 'exceptions' => [], + 'rules' => [ + 'COM.BT', + 'EDU.BT', + 'GOV.BT', + 'NET.BT', + 'ORG.BT', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BUILD.php b/data/domain/public-suffix/BUILD.php new file mode 100644 index 00000000..3572bf7e --- /dev/null +++ b/data/domain/public-suffix/BUILD.php @@ -0,0 +1,12 @@ + [], + 'rules' => [ + 'SHIPTODAY.BUILD', + 'V0.BUILD', + 'WINDSURF.BUILD', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/BUILDERS.php b/data/domain/public-suffix/BUILDERS.php new file mode 100644 index 00000000..9db41f3c --- /dev/null +++ b/data/domain/public-suffix/BUILDERS.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'CLOUDSITE.BUILDERS', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/BUSINESS.php b/data/domain/public-suffix/BUSINESS.php new file mode 100644 index 00000000..dbcd8de8 --- /dev/null +++ b/data/domain/public-suffix/BUSINESS.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'CO.BUSINESS', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/BW.php b/data/domain/public-suffix/BW.php index 5cf7ebe9..b4f5bca4 100644 --- a/data/domain/public-suffix/BW.php +++ b/data/domain/public-suffix/BW.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.BW', - 'CO.BW', - 'GOV.BW', - 'NET.BW', - 'ORG.BW', + 'exceptions' => [], + 'rules' => [ + 'AC.BW', + 'CO.BW', + 'GOV.BW', + 'NET.BW', + 'ORG.BW', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BY.php b/data/domain/public-suffix/BY.php index c70848e2..773acf77 100644 --- a/data/domain/public-suffix/BY.php +++ b/data/domain/public-suffix/BY.php @@ -2,8 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.BY', - 'MIL.BY', - 'COM.BY', - 'OF.BY', + 'exceptions' => [], + 'rules' => [ + 'COM.BY', + 'GOV.BY', + 'MEDIATECH.BY', + 'MIL.BY', + 'OF.BY', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/BZ.php b/data/domain/public-suffix/BZ.php index 8cd5cf07..ea42376f 100644 --- a/data/domain/public-suffix/BZ.php +++ b/data/domain/public-suffix/BZ.php @@ -2,10 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.BZ', - 'COM.BZ', - 'EDU.BZ', - 'GOV.BZ', - 'NET.BZ', - 'ORG.BZ', + 'exceptions' => [], + 'rules' => [ + 'CO.BZ', + 'COM.BZ', + 'EDU.BZ', + 'GOV.BZ', + 'GSJ.BZ', + 'MYDNS.BZ', + 'NET.BZ', + 'ORG.BZ', + 'ZA.BZ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CA.php b/data/domain/public-suffix/CA.php index a1f4ef81..89e84f0c 100644 --- a/data/domain/public-suffix/CA.php +++ b/data/domain/public-suffix/CA.php @@ -2,19 +2,31 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AB.CA', - 'BC.CA', - 'MB.CA', - 'NB.CA', - 'NF.CA', - 'NL.CA', - 'NS.CA', - 'NT.CA', - 'NU.CA', - 'ON.CA', - 'PE.CA', - 'QC.CA', - 'SK.CA', - 'YK.CA', - 'GC.CA', + 'exceptions' => [], + 'rules' => [ + 'AB.CA', + 'BARSY.CA', + 'BC.CA', + 'BOX.CA', + 'CO.CA', + 'GC.CA', + 'MB.CA', + 'MYSPREADSHOP.CA', + 'NB.CA', + 'NF.CA', + 'NL.CA', + 'NO-IP.CA', + 'NS.CA', + 'NT.CA', + 'NU.CA', + 'ON.CA', + 'ONID.CA', + 'PE.CA', + 'QC.CA', + 'SK.CA', + 'YK.CA', + ], + 'wildcards' => [ + 'AWDEV.CA', + ], ]; diff --git a/data/domain/public-suffix/CAMP.php b/data/domain/public-suffix/CAMP.php new file mode 100644 index 00000000..6d38aa73 --- /dev/null +++ b/data/domain/public-suffix/CAMP.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'AT.EMF.CAMP', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/CASA.php b/data/domain/public-suffix/CASA.php new file mode 100644 index 00000000..dcc0f344 --- /dev/null +++ b/data/domain/public-suffix/CASA.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'UI.NABU.CASA', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/CASE.php b/data/domain/public-suffix/CASE.php new file mode 100644 index 00000000..2f48170f --- /dev/null +++ b/data/domain/public-suffix/CASE.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'SAV.CASE', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/CC.php b/data/domain/public-suffix/CC.php new file mode 100644 index 00000000..bd07f335 --- /dev/null +++ b/data/domain/public-suffix/CC.php @@ -0,0 +1,26 @@ + [], + 'rules' => [ + 'CCWU.CC', + 'CLEVERAPPS.CC', + 'CLOUD-IP.CC', + 'CLOUDNS.CC', + 'CSX.CC', + 'EC.CC', + 'EU.CC', + 'FANTASYLEAGUE.CC', + 'FTPACCESS.CC', + 'GAME-SERVER.CC', + 'GU.CC', + 'INSTANCES.SPAWN.CC', + 'MYPHOTOS.CC', + 'SCRAPPING.CC', + 'TWMAIL.CC', + 'UK.CC', + 'US.CC', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/CD.php b/data/domain/public-suffix/CD.php index d1abfbc2..09667e14 100644 --- a/data/domain/public-suffix/CD.php +++ b/data/domain/public-suffix/CD.php @@ -2,5 +2,10 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.CD', + 'exceptions' => [], + 'rules' => [ + 'CC.CD', + 'GOV.CD', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CH.php b/data/domain/public-suffix/CH.php new file mode 100644 index 00000000..b1cc8074 --- /dev/null +++ b/data/domain/public-suffix/CH.php @@ -0,0 +1,30 @@ + [], + 'rules' => [ + '123WEBSITE.CH', + '12HP.CH', + '2IX.CH', + '4LIMA.CH', + 'ALP1.AE.FLOW.CH', + 'APPENGINE.FLOW.CH', + 'CLOUDNS.CH', + 'CUST.CLOUDSCALE.CH', + 'DNSKING.CH', + 'GOTDNS.CH', + 'LIMA-CITY.CH', + 'LINKYARD-CLOUD.CH', + 'LPG.OBJECTSTORAGE.CH', + 'MYSPREADSHOP.CH', + 'OBJECTS.LPG.CLOUDSCALE.CH', + 'OBJECTS.RMA.CLOUDSCALE.CH', + 'RMA.OBJECTSTORAGE.CH', + 'SQUARE7.CH', + ], + 'wildcards' => [ + 'FIRENET.CH', + 'SVC.FIRENET.CH', + ], +]; diff --git a/data/domain/public-suffix/CI.php b/data/domain/public-suffix/CI.php index 2997b5ff..70463a62 100644 --- a/data/domain/public-suffix/CI.php +++ b/data/domain/public-suffix/CI.php @@ -2,17 +2,22 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.CI', - 'AÉROPORT.CI', - 'ASSO.CI', - 'CO.CI', - 'COM.CI', - 'ED.CI', - 'EDU.CI', - 'GO.CI', - 'GOUV.CI', - 'INT.CI', - 'NET.CI', - 'OR.CI', - 'ORG.CI', + 'exceptions' => [], + 'rules' => [ + 'AC.CI', + 'ASSO.CI', + 'CO.CI', + 'COM.CI', + 'ED.CI', + 'EDU.CI', + 'GO.CI', + 'GOUV.CI', + 'INT.CI', + 'NET.CI', + 'OR.CI', + 'ORG.CI', + 'US.CI', + 'XN--AROPORT-BYA.CI', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CK.php b/data/domain/public-suffix/CK.php index 24036673..6683ad8e 100644 --- a/data/domain/public-suffix/CK.php +++ b/data/domain/public-suffix/CK.php @@ -2,5 +2,11 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'WWW.CK', + 'exceptions' => [ + 'WWW.CK', + ], + 'rules' => [], + 'wildcards' => [ + 'CK', + ], ]; diff --git a/data/domain/public-suffix/CL.php b/data/domain/public-suffix/CL.php index 38247c0d..ed1945db 100644 --- a/data/domain/public-suffix/CL.php +++ b/data/domain/public-suffix/CL.php @@ -2,8 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.CL', - 'GOB.CL', - 'GOV.CL', - 'MIL.CL', + 'exceptions' => [], + 'rules' => [ + 'CLOUDNS.CL', + 'CO.CL', + 'GOB.CL', + 'GOV.CL', + 'MIL.CL', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CLOUD.php b/data/domain/public-suffix/CLOUD.php new file mode 100644 index 00000000..5127ee65 --- /dev/null +++ b/data/domain/public-suffix/CLOUD.php @@ -0,0 +1,104 @@ + [], + 'rules' => [ + 'ANTAGONIST.CLOUD', + 'CA.RECLAIM.CLOUD', + 'CH.TRENDHOSTING.CLOUD', + 'COCKPIT.FR-PAR.SCW.CLOUD', + 'COCKPIT.NL-AMS.SCW.CLOUD', + 'COCKPIT.PL-WAW.SCW.CLOUD', + 'CONVEX.CLOUD', + 'CS.KELIWEB.CLOUD', + 'DDL.FR-PAR.SCW.CLOUD', + 'DDL.NL-AMS.SCW.CLOUD', + 'DDL.PL-WAW.SCW.CLOUD', + 'DE.TRENDHOSTING.CLOUD', + 'DIADEM.CLOUD', + 'DTWH.FR-PAR.SCW.CLOUD', + 'DTWH.NL-AMS.SCW.CLOUD', + 'DTWH.PL-WAW.SCW.CLOUD', + 'ELEMENTOR.CLOUD', + 'EMERGENT.CLOUD', + 'ES-1.AXARNET.CLOUD', + 'EU-WEST-1.CONVEX.CLOUD', + 'EU.ENCOWAY.CLOUD', + 'FNC.FR-PAR.SCW.CLOUD', + 'FR-PAR-1.BAREMETAL.SCW.CLOUD', + 'FR-PAR-2.BAREMETAL.SCW.CLOUD', + 'FUNCTIONS.FNC.FR-PAR.SCW.CLOUD', + 'IFR.FR-PAR.SCW.CLOUD', + 'IFR.NL-AMS.SCW.CLOUD', + 'IFR.PL-WAW.SCW.CLOUD', + 'IT1.EUR.ARUBA.JENV-ARUBA.CLOUD', + 'IT1.JENV-ARUBA.CLOUD', + 'JELE.CLOUD', + 'JOTE.CLOUD', + 'JOTELULU.CLOUD', + 'K8S.FR-PAR.SCW.CLOUD', + 'K8S.NL-AMS.SCW.CLOUD', + 'K8S.PL-WAW.SCW.CLOUD', + 'K8S.SCW.CLOUD', + 'KAFK.FR-PAR.SCW.CLOUD', + 'KAFK.NL-AMS.SCW.CLOUD', + 'KAFK.PL-WAW.SCW.CLOUD', + 'KELIWEB.CLOUD', + 'KULEUVEN.CLOUD', + 'LARAVEL.CLOUD', + 'LINKYARD.CLOUD', + 'MATLAB.CLOUD', + 'MGDB.FR-PAR.SCW.CLOUD', + 'MGDB.NL-AMS.SCW.CLOUD', + 'MGDB.PL-WAW.SCW.CLOUD', + 'NL-AMS-1.BAREMETAL.SCW.CLOUD', + 'NODES.K8S.FR-PAR.SCW.CLOUD', + 'NODES.K8S.NL-AMS.SCW.CLOUD', + 'NODES.K8S.PL-WAW.SCW.CLOUD', + 'OBSERVABLEHQ.CLOUD', + 'OXA.CLOUD', + 'PERSPECTA.CLOUD', + 'PRIMETEL.CLOUD', + 'PRIV.INSTANCES.SCW.CLOUD', + 'PUB.INSTANCES.SCW.CLOUD', + 'RAVENDB.CLOUD', + 'RDB.FR-PAR.SCW.CLOUD', + 'RDB.NL-AMS.SCW.CLOUD', + 'RDB.PL-WAW.SCW.CLOUD', + 'RUNS.ONSTACKIT.CLOUD', + 'S3-WEBSITE.FR-PAR.SCW.CLOUD', + 'S3-WEBSITE.NL-AMS.SCW.CLOUD', + 'S3-WEBSITE.PL-WAW.SCW.CLOUD', + 'S3.FR-PAR.SCW.CLOUD', + 'S3.NL-AMS.SCW.CLOUD', + 'S3.PL-WAW.SCW.CLOUD', + 'SCALEBOOK.SCW.CLOUD', + 'SCBL.FR-PAR.SCW.CLOUD', + 'SCBL.NL-AMS.SCW.CLOUD', + 'SCBL.PL-WAW.SCW.CLOUD', + 'SERVEBOLT.CLOUD', + 'SMARTLABELING.SCW.CLOUD', + 'TN.OXA.CLOUD', + 'TRAFFICPLEX.CLOUD', + 'UK.OXA.CLOUD', + 'UK.PRIMETEL.CLOUD', + 'UK.RECLAIM.CLOUD', + 'UNISON-SERVICES.CLOUD', + 'UROWN.CLOUD', + 'US-EAST-1.CONVEX.CLOUD', + 'US.RECLAIM.CLOUD', + 'VAPOR.CLOUD', + 'VIP.JELASTIC.CLOUD', + 'VOORLOPER.CLOUD', + 'WHM.FR-PAR.SCW.CLOUD', + 'WHM.NL-AMS.SCW.CLOUD', + 'ZAP.CLOUD', + ], + 'wildcards' => [ + 'BEGETCDN.CLOUD', + 'MAGENTOSITE.CLOUD', + 'ON-RANCHER.CLOUD', + 'STATICS.CLOUD', + ], +]; diff --git a/data/domain/public-suffix/CLUB.php b/data/domain/public-suffix/CLUB.php new file mode 100644 index 00000000..e8b48728 --- /dev/null +++ b/data/domain/public-suffix/CLUB.php @@ -0,0 +1,12 @@ + [], + 'rules' => [ + 'BARSY.CLUB', + 'CLOUDNS.CLUB', + 'JELE.CLUB', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/CM.php b/data/domain/public-suffix/CM.php index beb52408..cfd0f70b 100644 --- a/data/domain/public-suffix/CM.php +++ b/data/domain/public-suffix/CM.php @@ -2,8 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.CM', - 'COM.CM', - 'GOV.CM', - 'NET.CM', + 'exceptions' => [], + 'rules' => [ + 'CO.CM', + 'COM.CM', + 'GOV.CM', + 'NET.CM', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CN.php b/data/domain/public-suffix/CN.php index 114b8425..f54b0725 100644 --- a/data/domain/public-suffix/CN.php +++ b/data/domain/public-suffix/CN.php @@ -2,48 +2,96 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.CN', - 'COM.CN', - 'EDU.CN', - 'GOV.CN', - 'MIL.CN', - 'NET.CN', - 'ORG.CN', - '公司.CN', - '網絡.CN', - '网络.CN', - 'AH.CN', - 'BJ.CN', - 'CQ.CN', - 'FJ.CN', - 'GD.CN', - 'GS.CN', - 'GX.CN', - 'GZ.CN', - 'HA.CN', - 'HB.CN', - 'HE.CN', - 'HI.CN', - 'HK.CN', - 'HL.CN', - 'HN.CN', - 'JL.CN', - 'JS.CN', - 'JX.CN', - 'LN.CN', - 'MO.CN', - 'NM.CN', - 'NX.CN', - 'QH.CN', - 'SC.CN', - 'SD.CN', - 'SH.CN', - 'SN.CN', - 'SX.CN', - 'TJ.CN', - 'TW.CN', - 'XJ.CN', - 'XZ.CN', - 'YN.CN', - 'ZJ.CN', + 'exceptions' => [], + 'rules' => [ + 'AC.CN', + 'AH.CN', + 'AS.SH.CN', + 'BJ.CN', + 'CANVA-APPS.CN', + 'CN-NORTH-1.EB.AMAZONAWS.COM.CN', + 'CN-NORTHWEST-1.EB.AMAZONAWS.COM.CN', + 'COM.CN', + 'CQ.CN', + 'DIRECT.QUICKCONNECT.CN', + 'EDU.CN', + 'EMRAPPUI-PROD.CN-NORTH-1.AMAZONAWS.COM.CN', + 'EMRAPPUI-PROD.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + 'EMRNOTEBOOKS-PROD.CN-NORTH-1.AMAZONAWS.COM.CN', + 'EMRNOTEBOOKS-PROD.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + 'EMRSTUDIO-PROD.CN-NORTH-1.AMAZONAWS.COM.CN', + 'EMRSTUDIO-PROD.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + 'EXECUTE-API.CN-NORTH-1.AMAZONAWS.COM.CN', + 'EXECUTE-API.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + 'FJ.CN', + 'GD.CN', + 'GOV.CN', + 'GS.CN', + 'GX.CN', + 'GZ.CN', + 'HA.CN', + 'HB.CN', + 'HE.CN', + 'HI.CN', + 'HK.CN', + 'HL.CN', + 'HN.CN', + 'JL.CN', + 'JS.CN', + 'JX.CN', + 'LN.CN', + 'MIL.CN', + 'MO.CN', + 'MY.CANVASITE.CN', + 'MYQNAPCLOUD.CN', + 'NET.CN', + 'NM.CN', + 'NOTEBOOK.CN-NORTH-1.SAGEMAKER.COM.CN', + 'NOTEBOOK.CN-NORTHWEST-1.SAGEMAKER.COM.CN', + 'NX.CN', + 'ORG.CN', + 'QH.CN', + 'S3-ACCESSPOINT.CN-NORTH-1.AMAZONAWS.COM.CN', + 'S3-ACCESSPOINT.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + 'S3-ACCESSPOINT.DUALSTACK.CN-NORTH-1.AMAZONAWS.COM.CN', + 'S3-ACCESSPOINT.DUALSTACK.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + 'S3-DEPRECATED.CN-NORTH-1.AMAZONAWS.COM.CN', + 'S3-OBJECT-LAMBDA.CN-NORTH-1.AMAZONAWS.COM.CN', + 'S3-OBJECT-LAMBDA.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + 'S3-WEBSITE.CN-NORTH-1.AMAZONAWS.COM.CN', + 'S3-WEBSITE.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + 'S3-WEBSITE.DUALSTACK.CN-NORTH-1.AMAZONAWS.COM.CN', + 'S3.CN-NORTH-1.AMAZONAWS.COM.CN', + 'S3.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + 'S3.DUALSTACK.CN-NORTH-1.AMAZONAWS.COM.CN', + 'S3.DUALSTACK.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + 'SC.CN', + 'SD.CN', + 'SH.CN', + 'SN.CN', + 'STUDIO.CN-NORTH-1.SAGEMAKER.COM.CN', + 'STUDIO.CN-NORTHWEST-1.SAGEMAKER.COM.CN', + 'SX.CN', + 'TJ.CN', + 'TRANSFER-WEBAPP.CN-NORTH-1.ON.AMAZONWEBSERVICES.COM.CN', + 'TRANSFER-WEBAPP.CN-NORTHWEST-1.ON.AMAZONWEBSERVICES.COM.CN', + 'TW.CN', + 'XJ.CN', + 'XN--55QX5D.CN', + 'XN--IO0A7I.CN', + 'XN--OD0ALG.CN', + 'XZ.CN', + 'YN.CN', + 'ZJ.CN', + ], + 'wildcards' => [ + 'AIRFLOW.CN-NORTH-1.ON.AMAZONWEBSERVICES.COM.CN', + 'AIRFLOW.CN-NORTHWEST-1.ON.AMAZONWEBSERVICES.COM.CN', + 'CN-NORTH-1.AIRFLOW.AMAZONAWS.COM.CN', + 'CN-NORTHWEST-1.AIRFLOW.AMAZONAWS.COM.CN', + 'COMPUTE.AMAZONAWS.COM.CN', + 'ELB.AMAZONAWS.COM.CN', + 'RDS.CN-NORTH-1.AMAZONAWS.COM.CN', + 'RDS.CN-NORTHWEST-1.AMAZONAWS.COM.CN', + ], ]; diff --git a/data/domain/public-suffix/CO.php b/data/domain/public-suffix/CO.php index 71168c2d..b8bc638a 100644 --- a/data/domain/public-suffix/CO.php +++ b/data/domain/public-suffix/CO.php @@ -2,11 +2,34 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.CO', - 'EDU.CO', - 'GOV.CO', - 'MIL.CO', - 'NET.CO', - 'NOM.CO', - 'ORG.CO', + 'exceptions' => [], + 'rules' => [ + 'CARRD.CO', + 'COM.CO', + 'CRD.CO', + 'EDU.CO', + 'FIREWALLEDREPLIT.CO', + 'GOV.CO', + 'HIDNS.CO', + 'ID.FIREWALLEDREPLIT.CO', + 'ID.REPL.CO', + 'LEADPAGES.CO', + 'LPAGES.CO', + 'MIL.CO', + 'MYPI.CO', + 'NET.CO', + 'NOM.CO', + 'ORG.CO', + 'REALTIME.SUPABASE.CO', + 'REPL.CO', + 'STORAGE.SUPABASE.CO', + 'SUPABASE.CO', + 'UMSO.CO', + ], + 'wildcards' => [ + 'CLUSTERS.RDPA.CO', + 'OTAP.CO', + 'SRVRLESS.RDPA.CO', + 'XMIT.CO', + ], ]; diff --git a/data/domain/public-suffix/CODES.php b/data/domain/public-suffix/CODES.php new file mode 100644 index 00000000..69bc571b --- /dev/null +++ b/data/domain/public-suffix/CODES.php @@ -0,0 +1,10 @@ + [], + 'rules' => [], + 'wildcards' => [ + 'OWO.CODES', + ], +]; diff --git a/data/domain/public-suffix/COM.php b/data/domain/public-suffix/COM.php new file mode 100644 index 00000000..028c4b51 --- /dev/null +++ b/data/domain/public-suffix/COM.php @@ -0,0 +1,1124 @@ + [], + 'rules' => [ + '180R.COM', + '1COOLDNS.COM', + '1KAPP.COM', + '3UTILITIES.COM', + '4U.COM', + 'A2HOSTED.COM', + 'ABRDNS.COM', + 'ADOBEAEMCLOUD.COM', + 'AF-SOUTH-1.ELASTICBEANSTALK.COM', + 'AFRICA.COM', + 'AIVENCLOUD.COM', + 'ALIASES121.COM', + 'ALIBABACLOUDCS.COM', + 'ALPHA-MYQNAPCLOUD.COM', + 'AMPLIFYAPP.COM', + 'ANALYTICS-GATEWAY.AP-NORTHEAST-1.AMAZONAWS.COM', + 'ANALYTICS-GATEWAY.AP-NORTHEAST-2.AMAZONAWS.COM', + 'ANALYTICS-GATEWAY.AP-SOUTH-1.AMAZONAWS.COM', + 'ANALYTICS-GATEWAY.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'ANALYTICS-GATEWAY.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'ANALYTICS-GATEWAY.EU-CENTRAL-1.AMAZONAWS.COM', + 'ANALYTICS-GATEWAY.EU-WEST-1.AMAZONAWS.COM', + 'ANALYTICS-GATEWAY.US-EAST-1.AMAZONAWS.COM', + 'ANALYTICS-GATEWAY.US-EAST-2.AMAZONAWS.COM', + 'ANALYTICS-GATEWAY.US-WEST-2.AMAZONAWS.COM', + 'AP-EAST-1.ELASTICBEANSTALK.COM', + 'AP-NORTHEAST-1.ELASTICBEANSTALK.COM', + 'AP-NORTHEAST-2.ELASTICBEANSTALK.COM', + 'AP-NORTHEAST-3.ELASTICBEANSTALK.COM', + 'AP-SOUTH-1.ELASTICBEANSTALK.COM', + 'AP-SOUTHEAST-1.ELASTICBEANSTALK.COM', + 'AP-SOUTHEAST-2.ELASTICBEANSTALK.COM', + 'AP-SOUTHEAST-3.ELASTICBEANSTALK.COM', + 'AP-SOUTHEAST-5.ELASTICBEANSTALK.COM', + 'AP-SOUTHEAST-7.ELASTICBEANSTALK.COM', + 'API.STDLIB.COM', + 'APP.RENDER.COM', + 'APPCHIZI.COM', + 'APPLINZI.COM', + 'APPS-1AND1.COM', + 'APPS.FBSBX.COM', + 'APPSPACEHOSTED.COM', + 'APPSPACEUSERCONTENT.COM', + 'APPSPOT.COM', + 'ATMETA.COM', + 'AUTH-FIPS.US-EAST-1.AMAZONCOGNITO.COM', + 'AUTH-FIPS.US-EAST-2.AMAZONCOGNITO.COM', + 'AUTH-FIPS.US-GOV-EAST-1.AMAZONCOGNITO.COM', + 'AUTH-FIPS.US-GOV-WEST-1.AMAZONCOGNITO.COM', + 'AUTH-FIPS.US-WEST-1.AMAZONCOGNITO.COM', + 'AUTH-FIPS.US-WEST-2.AMAZONCOGNITO.COM', + 'AUTH.AF-SOUTH-1.AMAZONCOGNITO.COM', + 'AUTH.AP-EAST-1.AMAZONCOGNITO.COM', + 'AUTH.AP-NORTHEAST-1.AMAZONCOGNITO.COM', + 'AUTH.AP-NORTHEAST-2.AMAZONCOGNITO.COM', + 'AUTH.AP-NORTHEAST-3.AMAZONCOGNITO.COM', + 'AUTH.AP-SOUTH-1.AMAZONCOGNITO.COM', + 'AUTH.AP-SOUTH-2.AMAZONCOGNITO.COM', + 'AUTH.AP-SOUTHEAST-1.AMAZONCOGNITO.COM', + 'AUTH.AP-SOUTHEAST-2.AMAZONCOGNITO.COM', + 'AUTH.AP-SOUTHEAST-3.AMAZONCOGNITO.COM', + 'AUTH.AP-SOUTHEAST-4.AMAZONCOGNITO.COM', + 'AUTH.AP-SOUTHEAST-5.AMAZONCOGNITO.COM', + 'AUTH.AP-SOUTHEAST-7.AMAZONCOGNITO.COM', + 'AUTH.CA-CENTRAL-1.AMAZONCOGNITO.COM', + 'AUTH.CA-WEST-1.AMAZONCOGNITO.COM', + 'AUTH.EU-CENTRAL-1.AMAZONCOGNITO.COM', + 'AUTH.EU-CENTRAL-2.AMAZONCOGNITO.COM', + 'AUTH.EU-NORTH-1.AMAZONCOGNITO.COM', + 'AUTH.EU-SOUTH-1.AMAZONCOGNITO.COM', + 'AUTH.EU-SOUTH-2.AMAZONCOGNITO.COM', + 'AUTH.EU-WEST-1.AMAZONCOGNITO.COM', + 'AUTH.EU-WEST-2.AMAZONCOGNITO.COM', + 'AUTH.EU-WEST-3.AMAZONCOGNITO.COM', + 'AUTH.IL-CENTRAL-1.AMAZONCOGNITO.COM', + 'AUTH.ME-CENTRAL-1.AMAZONCOGNITO.COM', + 'AUTH.ME-SOUTH-1.AMAZONCOGNITO.COM', + 'AUTH.MX-CENTRAL-1.AMAZONCOGNITO.COM', + 'AUTH.SA-EAST-1.AMAZONCOGNITO.COM', + 'AUTH.US-EAST-1.AMAZONCOGNITO.COM', + 'AUTH.US-EAST-2.AMAZONCOGNITO.COM', + 'AUTH.US-WEST-1.AMAZONCOGNITO.COM', + 'AUTH.US-WEST-2.AMAZONCOGNITO.COM', + 'AUTHGEAR-STAGING.COM', + 'AUTHGEARAPPS.COM', + 'AWSAPPS.COM', + 'AWSGLOBALACCELERATOR.COM', + 'BALENA-DEVICES.COM', + 'BARSYCENTER.COM', + 'BARSYONLINE.COM', + 'BASE44-SANDBOX.COM', + 'BLOGDNS.COM', + 'BLOGSPOT.COM', + 'BLOGSYTE.COM', + 'BOUTIR.COM', + 'BPLACED.COM', + 'BR.COM', + 'BUILTWITHDARK.COM', + 'BUMBLESHRIMP.COM', + 'CA-CENTRAL-1.ELASTICBEANSTALK.COM', + 'CAFJS.COM', + 'CANVA-APPS.COM', + 'CANVA-HOSTED-EMBED.COM', + 'CANVACODE.COM', + 'CARACAL.MYTHIC-BEASTS.COM', + 'CDN77-STORAGE.COM', + 'CECHIRE.COM', + 'CF-IPFS.COM', + 'CISCOFREAK.COM', + 'CLOUD.NOSPAMPROXY.COM', + 'CLOUDFLARE-IPFS.COM', + 'CN.COM', + 'CO.COM', + 'CODESPOT.COM', + 'CPRAPID.COM', + 'CPSERVER.COM', + 'CUSTOMER.MYTHIC-BEASTS.COM', + 'DAMNSERVER.COM', + 'DATTOLOCAL.COM', + 'DATTORELAY.COM', + 'DATTOWEB.COM', + 'DDNSFREE.COM', + 'DDNSGEEK.COM', + 'DDNSGURU.COM', + 'DDNSKING.COM', + 'DE.COM', + 'DEMO.DATADETECT.COM', + 'DEMO.JELASTIC.COM', + 'DEUS-CANVAS.COM', + 'DEV-MYQNAPCLOUD.COM', + 'DEV.PROJECT-STUDY.COM', + 'DISCORDSAYS.COM', + 'DISCORDSEZ.COM', + 'DITCHYOURIP.COM', + 'DNSABR.COM', + 'DNSALIAS.COM', + 'DNSDOJO.COM', + 'DNSISKINKY.COM', + 'DOESNTEXIST.COM', + 'DOJIN.COM', + 'DONTEXIST.COM', + 'DOOMDNS.COM', + 'DOPAAS.COM', + 'DRAYDDNS.COM', + 'DREAMHOSTERS.COM', + 'DRIVE-PLATFORM.COM', + 'DSMYNAS.COM', + 'DURUMIS.COM', + 'DYN-O-SAUR.COM', + 'DYNALIAS.COM', + 'DYNDNS-AT-HOME.COM', + 'DYNDNS-AT-WORK.COM', + 'DYNDNS-BLOG.COM', + 'DYNDNS-FREE.COM', + 'DYNDNS-HOME.COM', + 'DYNDNS-IP.COM', + 'DYNDNS-MAIL.COM', + 'DYNDNS-OFFICE.COM', + 'DYNDNS-PICS.COM', + 'DYNDNS-REMOTE.COM', + 'DYNDNS-SERVER.COM', + 'DYNDNS-WEB.COM', + 'DYNDNS-WIKI.COM', + 'DYNDNS-WORK.COM', + 'DYNNS.COM', + 'DYNUDDNS.COM', + 'DYNUHOSTING.COM', + 'ELASTICBEANSTALK.COM', + 'EMRAPPUI-PROD.AF-SOUTH-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.AP-EAST-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.AP-NORTHEAST-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.AP-NORTHEAST-2.AMAZONAWS.COM', + 'EMRAPPUI-PROD.AP-NORTHEAST-3.AMAZONAWS.COM', + 'EMRAPPUI-PROD.AP-SOUTH-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.AP-SOUTH-2.AMAZONAWS.COM', + 'EMRAPPUI-PROD.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'EMRAPPUI-PROD.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'EMRAPPUI-PROD.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'EMRAPPUI-PROD.CA-CENTRAL-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.CA-WEST-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.EU-CENTRAL-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.EU-CENTRAL-2.AMAZONAWS.COM', + 'EMRAPPUI-PROD.EU-NORTH-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.EU-SOUTH-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.EU-SOUTH-2.AMAZONAWS.COM', + 'EMRAPPUI-PROD.EU-WEST-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.EU-WEST-2.AMAZONAWS.COM', + 'EMRAPPUI-PROD.EU-WEST-3.AMAZONAWS.COM', + 'EMRAPPUI-PROD.IL-CENTRAL-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.ME-CENTRAL-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.ME-SOUTH-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.SA-EAST-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.US-EAST-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.US-EAST-2.AMAZONAWS.COM', + 'EMRAPPUI-PROD.US-GOV-EAST-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.US-GOV-WEST-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.US-WEST-1.AMAZONAWS.COM', + 'EMRAPPUI-PROD.US-WEST-2.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AF-SOUTH-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AP-EAST-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AP-NORTHEAST-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AP-NORTHEAST-2.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AP-NORTHEAST-3.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AP-SOUTH-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AP-SOUTH-2.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.CA-CENTRAL-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.CA-WEST-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.EU-CENTRAL-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.EU-CENTRAL-2.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.EU-NORTH-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.EU-SOUTH-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.EU-SOUTH-2.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.EU-WEST-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.EU-WEST-2.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.EU-WEST-3.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.IL-CENTRAL-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.ME-CENTRAL-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.ME-SOUTH-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.SA-EAST-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.US-EAST-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.US-EAST-2.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.US-GOV-EAST-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.US-GOV-WEST-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.US-WEST-1.AMAZONAWS.COM', + 'EMRNOTEBOOKS-PROD.US-WEST-2.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AF-SOUTH-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AP-EAST-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AP-NORTHEAST-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AP-NORTHEAST-2.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AP-NORTHEAST-3.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AP-SOUTH-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AP-SOUTH-2.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.CA-CENTRAL-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.CA-WEST-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.EU-CENTRAL-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.EU-CENTRAL-2.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.EU-NORTH-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.EU-SOUTH-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.EU-SOUTH-2.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.EU-WEST-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.EU-WEST-2.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.EU-WEST-3.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.IL-CENTRAL-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.ME-CENTRAL-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.ME-SOUTH-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.SA-EAST-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.US-EAST-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.US-EAST-2.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.US-GOV-EAST-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.US-GOV-WEST-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.US-WEST-1.AMAZONAWS.COM', + 'EMRSTUDIO-PROD.US-WEST-2.AMAZONAWS.COM', + 'ENCOREAPI.COM', + 'EST-A-LA-MAISON.COM', + 'EST-A-LA-MASION.COM', + 'EST-LE-PATRON.COM', + 'EST-MON-BLOGUEUR.COM', + 'EU-1.EVENNODE.COM', + 'EU-2.EVENNODE.COM', + 'EU-3.EVENNODE.COM', + 'EU-4.EVENNODE.COM', + 'EU-CENTRAL-1.ELASTICBEANSTALK.COM', + 'EU-NORTH-1.ELASTICBEANSTALK.COM', + 'EU-SOUTH-1.ELASTICBEANSTALK.COM', + 'EU-SOUTH-2.ELASTICBEANSTALK.COM', + 'EU-WEST-1.ELASTICBEANSTALK.COM', + 'EU-WEST-2.ELASTICBEANSTALK.COM', + 'EU-WEST-3.ELASTICBEANSTALK.COM', + 'EU.COM', + 'EU.METEORAPP.COM', + 'EU.PYTHONANYWHERE.COM', + 'EU1-PLENIT.COM', + 'EXECUTE-API.AF-SOUTH-1.AMAZONAWS.COM', + 'EXECUTE-API.AP-EAST-1.AMAZONAWS.COM', + 'EXECUTE-API.AP-NORTHEAST-1.AMAZONAWS.COM', + 'EXECUTE-API.AP-NORTHEAST-2.AMAZONAWS.COM', + 'EXECUTE-API.AP-NORTHEAST-3.AMAZONAWS.COM', + 'EXECUTE-API.AP-SOUTH-1.AMAZONAWS.COM', + 'EXECUTE-API.AP-SOUTH-2.AMAZONAWS.COM', + 'EXECUTE-API.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'EXECUTE-API.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'EXECUTE-API.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'EXECUTE-API.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'EXECUTE-API.AP-SOUTHEAST-5.AMAZONAWS.COM', + 'EXECUTE-API.CA-CENTRAL-1.AMAZONAWS.COM', + 'EXECUTE-API.CA-WEST-1.AMAZONAWS.COM', + 'EXECUTE-API.EU-CENTRAL-1.AMAZONAWS.COM', + 'EXECUTE-API.EU-CENTRAL-2.AMAZONAWS.COM', + 'EXECUTE-API.EU-NORTH-1.AMAZONAWS.COM', + 'EXECUTE-API.EU-SOUTH-1.AMAZONAWS.COM', + 'EXECUTE-API.EU-SOUTH-2.AMAZONAWS.COM', + 'EXECUTE-API.EU-WEST-1.AMAZONAWS.COM', + 'EXECUTE-API.EU-WEST-2.AMAZONAWS.COM', + 'EXECUTE-API.EU-WEST-3.AMAZONAWS.COM', + 'EXECUTE-API.IL-CENTRAL-1.AMAZONAWS.COM', + 'EXECUTE-API.ME-CENTRAL-1.AMAZONAWS.COM', + 'EXECUTE-API.ME-SOUTH-1.AMAZONAWS.COM', + 'EXECUTE-API.SA-EAST-1.AMAZONAWS.COM', + 'EXECUTE-API.US-EAST-1.AMAZONAWS.COM', + 'EXECUTE-API.US-EAST-2.AMAZONAWS.COM', + 'EXECUTE-API.US-GOV-EAST-1.AMAZONAWS.COM', + 'EXECUTE-API.US-GOV-WEST-1.AMAZONAWS.COM', + 'EXECUTE-API.US-WEST-1.AMAZONAWS.COM', + 'EXECUTE-API.US-WEST-2.AMAZONAWS.COM', + 'FAMILYDS.COM', + 'FASTLY-EDGE.COM', + 'FASTLY-TERRARIUM.COM', + 'FASTVPS-SERVER.COM', + 'FENTIGER.MYTHIC-BEASTS.COM', + 'FIREBASEAPP.COM', + 'FIREWALL-GATEWAY.COM', + 'FLDRV.COM', + 'FORGEBLOCKS.COM', + 'FRAMERCANVAS.COM', + 'FREEBOX-OS.COM', + 'FREEBOXOS.COM', + 'FREEMYIP.COM', + 'FROM-AK.COM', + 'FROM-AL.COM', + 'FROM-AR.COM', + 'FROM-CA.COM', + 'FROM-CT.COM', + 'FROM-DC.COM', + 'FROM-DE.COM', + 'FROM-FL.COM', + 'FROM-GA.COM', + 'FROM-HI.COM', + 'FROM-IA.COM', + 'FROM-ID.COM', + 'FROM-IL.COM', + 'FROM-IN.COM', + 'FROM-KS.COM', + 'FROM-KY.COM', + 'FROM-MA.COM', + 'FROM-MD.COM', + 'FROM-MI.COM', + 'FROM-MN.COM', + 'FROM-MO.COM', + 'FROM-MS.COM', + 'FROM-MT.COM', + 'FROM-NC.COM', + 'FROM-ND.COM', + 'FROM-NE.COM', + 'FROM-NH.COM', + 'FROM-NJ.COM', + 'FROM-NM.COM', + 'FROM-NV.COM', + 'FROM-OH.COM', + 'FROM-OK.COM', + 'FROM-OR.COM', + 'FROM-PA.COM', + 'FROM-PR.COM', + 'FROM-RI.COM', + 'FROM-SC.COM', + 'FROM-SD.COM', + 'FROM-TN.COM', + 'FROM-TX.COM', + 'FROM-UT.COM', + 'FROM-VA.COM', + 'FROM-VT.COM', + 'FROM-WA.COM', + 'FROM-WI.COM', + 'FROM-WV.COM', + 'FROM-WY.COM', + 'GEEKGALAXY.COM', + 'GENTAPPS.COM', + 'GENTLENTAPIS.COM', + 'GETMYIP.COM', + 'GIIZE.COM', + 'GITHUBUSERCONTENT.COM', + 'GLEEZE.COM', + 'GOOGLEAPIS.COM', + 'GOOGLECODE.COM', + 'GOTDNS.COM', + 'GOTPANTHEON.COM', + 'GR.COM', + 'GRAYJAYLEAGUES.COM', + 'HATENABLOG.COM', + 'HATENADIARY.COM', + 'HEALTH-CAREREFORM.COM', + 'HERCULES-APP.COM', + 'HERCULES-DEV.COM', + 'HEROKUAPP.COM', + 'HK.COM', + 'HOBBY-SITE.COM', + 'HOMELINUX.COM', + 'HOMESECURITYMAC.COM', + 'HOMESECURITYPC.COM', + 'HOMEUNIX.COM', + 'HOSTEDPI.COM', + 'HOTELWITHFLIGHT.COM', + 'IAMALLAMA.COM', + 'IL-CENTRAL-1.ELASTICBEANSTALK.COM', + 'INSTANCE.DATADETECT.COM', + 'IP-DDNS.COM', + 'IP.LINODEUSERCONTENT.COM', + 'IS-A-ANARCHIST.COM', + 'IS-A-BLOGGER.COM', + 'IS-A-BOOKKEEPER.COM', + 'IS-A-BULLS-FAN.COM', + 'IS-A-CATERER.COM', + 'IS-A-CHEF.COM', + 'IS-A-CONSERVATIVE.COM', + 'IS-A-CPA.COM', + 'IS-A-CUBICLE-SLAVE.COM', + 'IS-A-DEMOCRAT.COM', + 'IS-A-DESIGNER.COM', + 'IS-A-DOCTOR.COM', + 'IS-A-FINANCIALADVISOR.COM', + 'IS-A-GEEK.COM', + 'IS-A-GREEN.COM', + 'IS-A-GURU.COM', + 'IS-A-HARD-WORKER.COM', + 'IS-A-HUNTER.COM', + 'IS-A-LANDSCAPER.COM', + 'IS-A-LAWYER.COM', + 'IS-A-LIBERAL.COM', + 'IS-A-LIBERTARIAN.COM', + 'IS-A-LLAMA.COM', + 'IS-A-MUSICIAN.COM', + 'IS-A-NASCARFAN.COM', + 'IS-A-NURSE.COM', + 'IS-A-PAINTER.COM', + 'IS-A-PERSONALTRAINER.COM', + 'IS-A-PHOTOGRAPHER.COM', + 'IS-A-PLAYER.COM', + 'IS-A-REPUBLICAN.COM', + 'IS-A-ROCKSTAR.COM', + 'IS-A-SOCIALIST.COM', + 'IS-A-STUDENT.COM', + 'IS-A-TEACHER.COM', + 'IS-A-TECHIE.COM', + 'IS-A-THERAPIST.COM', + 'IS-AN-ACCOUNTANT.COM', + 'IS-AN-ACTOR.COM', + 'IS-AN-ACTRESS.COM', + 'IS-AN-ANARCHIST.COM', + 'IS-AN-ARTIST.COM', + 'IS-AN-ENGINEER.COM', + 'IS-AN-ENTERTAINER.COM', + 'IS-CERTIFIED.COM', + 'IS-GONE.COM', + 'IS-INTO-ANIME.COM', + 'IS-INTO-CARS.COM', + 'IS-INTO-CARTOONS.COM', + 'IS-INTO-GAMES.COM', + 'IS-LEET.COM', + 'IS-NOT-CERTIFIED.COM', + 'IS-SLICK.COM', + 'IS-UBERLEET.COM', + 'IS-WITH-THEBAND.COM', + 'ISA-GEEK.COM', + 'ISA-HOCKEYNUT.COM', + 'ISSMARTERTHANYOU.COM', + 'IT.COM', + 'JCLOUD-VER-JPC.IK-SERVER.COM', + 'JCLOUD.IK-SERVER.COM', + 'JDEVCLOUD.COM', + 'JED.WAFAICLOUD.COM', + 'JPN.COM', + 'JS.WPENGINEPOWERED.COM', + 'KASSERVER.COM', + 'KOZOW.COM', + 'LA1-PLENIT.COM', + 'LADESK.COM', + 'LIKES-PIE.COM', + 'LIKESCANDY.COM', + 'LIVE-WEBSITE.COM', + 'LOCALTONET.COM', + 'LOGOIP.COM', + 'LOSEYOURIP.COM', + 'LOVABLEPROJECT.COM', + 'LPUSERCONTENT.COM', + 'LYNX.MYTHIC-BEASTS.COM', + 'MAGICPATTERNSAPP.COM', + 'MAZEPLAY.COM', + 'ME-CENTRAL-1.ELASTICBEANSTALK.COM', + 'ME-SOUTH-1.ELASTICBEANSTALK.COM', + 'MEDIA.STRAPIAPP.COM', + 'MEMBERS.LINODE.COM', + 'MESSWITHDNS.COM', + 'METEORAPP.COM', + 'MEX.COM', + 'MINISERVER.COM', + 'MOCHAUSERCONTENT.COM', + 'MODELSCAPE.COM', + 'MRAP.ACCESSPOINT.S3-GLOBAL.AMAZONAWS.COM', + 'MWCLOUDNONPROD.COM', + 'MYACTIVEDIRECTORY.COM', + 'MYASUSTOR.COM', + 'MYCLOUDNAS.COM', + 'MYDATTO.COM', + 'MYDBSERVER.COM', + 'MYDOBISS.COM', + 'MYIPHOST.COM', + 'MYNASCLOUD.COM', + 'MYQNAPCLOUD.COM', + 'MYSECURITYCAMERA.COM', + 'MYSHOPBLOCKS.COM', + 'MYSHOPIFY.COM', + 'MYSPREADSHOP.COM', + 'MYTABIT.COM', + 'MYTULEAP.COM', + 'MYVNC.COM', + 'NEAT-URL.COM', + 'NET-FREAKS.COM', + 'NFSHOST.COM', + 'O365.CLOUD.NOSPAMPROXY.COM', + 'OCELOT.MYTHIC-BEASTS.COM', + 'ON-APTIBLE.COM', + 'ON-FORGE.COM', + 'ON-VAPOR.COM', + 'ONCILLA.MYTHIC-BEASTS.COM', + 'ONFABRICA.COM', + 'ONRENDER.COM', + 'ONTHEWIFI.COM', + 'ONZA.MYTHIC-BEASTS.COM', + 'OOGUY.COM', + 'OPERAUNITE.COM', + 'ORSITES.COM', + 'OUTSYSTEMSCLOUD.COM', + 'OWNPROVIDER.COM', + 'PAAS.HOSTED-BY-PREVIDER.COM', + 'PAAS.MASSIVEGRID.COM', + 'PAGES.WIARDWEB.COM', + 'PAGESPEEDMOBILIZER.COM', + 'PAGEXL.COM', + 'PGFOG.COM', + 'PIVOHOSTING.COM', + 'PIXOLINO.COM', + 'PLAYSTATION-CLOUD.COM', + 'PLESKNS.COM', + 'POINT2THIS.COM', + 'POLYSPACE.COM', + 'POSTMAN-ECHO.COM', + 'PREVIEW.EMERGENTAGENT.COM', + 'PRO.TYPEFORM.COM', + 'PYTHONANYWHERE.COM', + 'QA2.COM', + 'QBUSER.COM', + 'QUALIFIOAPP.COM', + 'QUICKSYTES.COM', + 'RACKMAZE.COM', + 'RAG-CLOUD-CH.HOSTEUR.COM', + 'RAG-CLOUD.HOSTEUR.COM', + 'READTHEDOCS-HOSTED.COM', + 'REMOTEWD.COM', + 'RESERVD.COM', + 'RESERVE-ONLINE.COM', + 'RHCLOUD.COM', + 'RICE-LABS.COM', + 'ROUTINGTHECLOUD.COM', + 'RU.COM', + 'RYD.WAFAICLOUD.COM', + 'S3-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.CA-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.DUALSTACK.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.DUALSTACK.CA-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.DUALSTACK.US-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.DUALSTACK.US-EAST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.DUALSTACK.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.DUALSTACK.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.DUALSTACK.US-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.DUALSTACK.US-WEST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.US-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.US-EAST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.US-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT-FIPS.US-WEST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AF-SOUTH-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-NORTHEAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-NORTHEAST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-NORTHEAST-3.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-SOUTH-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-SOUTH-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'S3-ACCESSPOINT.AP-SOUTHEAST-5.AMAZONAWS.COM', + 'S3-ACCESSPOINT.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.CA-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AF-SOUTH-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-NORTHEAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-NORTHEAST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-NORTHEAST-3.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-SOUTH-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-SOUTH-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.AP-SOUTHEAST-5.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.CA-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.EU-CENTRAL-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.EU-CENTRAL-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.EU-NORTH-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.EU-SOUTH-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.EU-SOUTH-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.EU-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.EU-WEST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.EU-WEST-3.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.IL-CENTRAL-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.ME-CENTRAL-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.ME-SOUTH-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.SA-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.US-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.US-EAST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.US-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.DUALSTACK.US-WEST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.EU-CENTRAL-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.EU-CENTRAL-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.EU-NORTH-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.EU-SOUTH-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.EU-SOUTH-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.EU-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.EU-WEST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.EU-WEST-3.AMAZONAWS.COM', + 'S3-ACCESSPOINT.IL-CENTRAL-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.ME-CENTRAL-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.ME-SOUTH-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.SA-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.US-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.US-EAST-2.AMAZONAWS.COM', + 'S3-ACCESSPOINT.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.US-WEST-1.AMAZONAWS.COM', + 'S3-ACCESSPOINT.US-WEST-2.AMAZONAWS.COM', + 'S3-AP-EAST-1.AMAZONAWS.COM', + 'S3-AP-NORTHEAST-1.AMAZONAWS.COM', + 'S3-AP-NORTHEAST-2.AMAZONAWS.COM', + 'S3-AP-NORTHEAST-3.AMAZONAWS.COM', + 'S3-AP-SOUTH-1.AMAZONAWS.COM', + 'S3-AP-SOUTHEAST-1.AMAZONAWS.COM', + 'S3-AP-SOUTHEAST-2.AMAZONAWS.COM', + 'S3-CA-CENTRAL-1.AMAZONAWS.COM', + 'S3-DEPRECATED.AP-SOUTHEAST-5.AMAZONAWS.COM', + 'S3-DEPRECATED.EU-WEST-1.AMAZONAWS.COM', + 'S3-DEPRECATED.US-EAST-1.AMAZONAWS.COM', + 'S3-DEPRECATED.US-EAST-2.AMAZONAWS.COM', + 'S3-DEPRECATED.US-WEST-2.AMAZONAWS.COM', + 'S3-EU-CENTRAL-1.AMAZONAWS.COM', + 'S3-EU-NORTH-1.AMAZONAWS.COM', + 'S3-EU-WEST-1.AMAZONAWS.COM', + 'S3-EU-WEST-2.AMAZONAWS.COM', + 'S3-EU-WEST-3.AMAZONAWS.COM', + 'S3-EXTERNAL-1.AMAZONAWS.COM', + 'S3-FIPS-US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-FIPS-US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-FIPS.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3-FIPS.CA-WEST-1.AMAZONAWS.COM', + 'S3-FIPS.DUALSTACK.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3-FIPS.DUALSTACK.CA-WEST-1.AMAZONAWS.COM', + 'S3-FIPS.DUALSTACK.US-EAST-1.AMAZONAWS.COM', + 'S3-FIPS.DUALSTACK.US-EAST-2.AMAZONAWS.COM', + 'S3-FIPS.DUALSTACK.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-FIPS.DUALSTACK.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-FIPS.DUALSTACK.US-WEST-1.AMAZONAWS.COM', + 'S3-FIPS.DUALSTACK.US-WEST-2.AMAZONAWS.COM', + 'S3-FIPS.US-EAST-1.AMAZONAWS.COM', + 'S3-FIPS.US-EAST-2.AMAZONAWS.COM', + 'S3-FIPS.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-FIPS.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-FIPS.US-WEST-1.AMAZONAWS.COM', + 'S3-FIPS.US-WEST-2.AMAZONAWS.COM', + 'S3-ME-SOUTH-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AF-SOUTH-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-EAST-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-NORTHEAST-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-NORTHEAST-2.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-NORTHEAST-3.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-SOUTH-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-SOUTH-2.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.AP-SOUTHEAST-5.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.CA-WEST-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.EU-CENTRAL-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.EU-CENTRAL-2.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.EU-NORTH-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.EU-SOUTH-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.EU-SOUTH-2.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.EU-WEST-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.EU-WEST-2.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.EU-WEST-3.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.IL-CENTRAL-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.ME-CENTRAL-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.ME-SOUTH-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.SA-EAST-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.US-EAST-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.US-EAST-2.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.US-WEST-1.AMAZONAWS.COM', + 'S3-OBJECT-LAMBDA.US-WEST-2.AMAZONAWS.COM', + 'S3-SA-EAST-1.AMAZONAWS.COM', + 'S3-US-EAST-2.AMAZONAWS.COM', + 'S3-US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-US-WEST-1.AMAZONAWS.COM', + 'S3-US-WEST-2.AMAZONAWS.COM', + 'S3-WEBSITE-AP-NORTHEAST-1.AMAZONAWS.COM', + 'S3-WEBSITE-AP-SOUTHEAST-1.AMAZONAWS.COM', + 'S3-WEBSITE-AP-SOUTHEAST-2.AMAZONAWS.COM', + 'S3-WEBSITE-EU-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE-SA-EAST-1.AMAZONAWS.COM', + 'S3-WEBSITE-US-EAST-1.AMAZONAWS.COM', + 'S3-WEBSITE-US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE-US-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE-US-WEST-2.AMAZONAWS.COM', + 'S3-WEBSITE.AF-SOUTH-1.AMAZONAWS.COM', + 'S3-WEBSITE.AP-EAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.AP-NORTHEAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.AP-NORTHEAST-2.AMAZONAWS.COM', + 'S3-WEBSITE.AP-NORTHEAST-3.AMAZONAWS.COM', + 'S3-WEBSITE.AP-SOUTH-1.AMAZONAWS.COM', + 'S3-WEBSITE.AP-SOUTH-2.AMAZONAWS.COM', + 'S3-WEBSITE.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'S3-WEBSITE.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'S3-WEBSITE.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'S3-WEBSITE.AP-SOUTHEAST-5.AMAZONAWS.COM', + 'S3-WEBSITE.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3-WEBSITE.CA-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AF-SOUTH-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AP-NORTHEAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AP-NORTHEAST-2.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AP-NORTHEAST-3.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AP-SOUTH-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AP-SOUTH-2.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.AP-SOUTHEAST-5.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.CA-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.EU-CENTRAL-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.EU-CENTRAL-2.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.EU-SOUTH-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.EU-SOUTH-2.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.EU-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.EU-WEST-3.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.IL-CENTRAL-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.ME-CENTRAL-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.SA-EAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.US-EAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.US-EAST-2.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.US-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE.DUALSTACK.US-WEST-2.AMAZONAWS.COM', + 'S3-WEBSITE.EU-CENTRAL-1.AMAZONAWS.COM', + 'S3-WEBSITE.EU-CENTRAL-2.AMAZONAWS.COM', + 'S3-WEBSITE.EU-NORTH-1.AMAZONAWS.COM', + 'S3-WEBSITE.EU-SOUTH-1.AMAZONAWS.COM', + 'S3-WEBSITE.EU-SOUTH-2.AMAZONAWS.COM', + 'S3-WEBSITE.EU-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE.EU-WEST-2.AMAZONAWS.COM', + 'S3-WEBSITE.EU-WEST-3.AMAZONAWS.COM', + 'S3-WEBSITE.IL-CENTRAL-1.AMAZONAWS.COM', + 'S3-WEBSITE.ME-CENTRAL-1.AMAZONAWS.COM', + 'S3-WEBSITE.ME-SOUTH-1.AMAZONAWS.COM', + 'S3-WEBSITE.SA-EAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.US-EAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.US-EAST-2.AMAZONAWS.COM', + 'S3-WEBSITE.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3-WEBSITE.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE.US-WEST-1.AMAZONAWS.COM', + 'S3-WEBSITE.US-WEST-2.AMAZONAWS.COM', + 'S3.AF-SOUTH-1.AMAZONAWS.COM', + 'S3.AMAZONAWS.COM', + 'S3.AP-EAST-1.AMAZONAWS.COM', + 'S3.AP-NORTHEAST-1.AMAZONAWS.COM', + 'S3.AP-NORTHEAST-2.AMAZONAWS.COM', + 'S3.AP-NORTHEAST-3.AMAZONAWS.COM', + 'S3.AP-SOUTH-1.AMAZONAWS.COM', + 'S3.AP-SOUTH-2.AMAZONAWS.COM', + 'S3.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'S3.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'S3.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'S3.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'S3.AP-SOUTHEAST-5.AMAZONAWS.COM', + 'S3.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3.CA-WEST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.AF-SOUTH-1.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-EAST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-NORTHEAST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-NORTHEAST-2.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-NORTHEAST-3.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-SOUTH-1.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-SOUTH-2.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-SOUTHEAST-3.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-SOUTHEAST-4.AMAZONAWS.COM', + 'S3.DUALSTACK.AP-SOUTHEAST-5.AMAZONAWS.COM', + 'S3.DUALSTACK.CA-CENTRAL-1.AMAZONAWS.COM', + 'S3.DUALSTACK.CA-WEST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.EU-CENTRAL-1.AMAZONAWS.COM', + 'S3.DUALSTACK.EU-CENTRAL-2.AMAZONAWS.COM', + 'S3.DUALSTACK.EU-NORTH-1.AMAZONAWS.COM', + 'S3.DUALSTACK.EU-SOUTH-1.AMAZONAWS.COM', + 'S3.DUALSTACK.EU-SOUTH-2.AMAZONAWS.COM', + 'S3.DUALSTACK.EU-WEST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.EU-WEST-2.AMAZONAWS.COM', + 'S3.DUALSTACK.EU-WEST-3.AMAZONAWS.COM', + 'S3.DUALSTACK.IL-CENTRAL-1.AMAZONAWS.COM', + 'S3.DUALSTACK.ME-CENTRAL-1.AMAZONAWS.COM', + 'S3.DUALSTACK.ME-SOUTH-1.AMAZONAWS.COM', + 'S3.DUALSTACK.SA-EAST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.US-EAST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.US-EAST-2.AMAZONAWS.COM', + 'S3.DUALSTACK.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.US-WEST-1.AMAZONAWS.COM', + 'S3.DUALSTACK.US-WEST-2.AMAZONAWS.COM', + 'S3.EU-CENTRAL-1.AMAZONAWS.COM', + 'S3.EU-CENTRAL-2.AMAZONAWS.COM', + 'S3.EU-NORTH-1.AMAZONAWS.COM', + 'S3.EU-SOUTH-1.AMAZONAWS.COM', + 'S3.EU-SOUTH-2.AMAZONAWS.COM', + 'S3.EU-WEST-1.AMAZONAWS.COM', + 'S3.EU-WEST-2.AMAZONAWS.COM', + 'S3.EU-WEST-3.AMAZONAWS.COM', + 'S3.IL-CENTRAL-1.AMAZONAWS.COM', + 'S3.ME-CENTRAL-1.AMAZONAWS.COM', + 'S3.ME-SOUTH-1.AMAZONAWS.COM', + 'S3.SA-EAST-1.AMAZONAWS.COM', + 'S3.US-EAST-1.AMAZONAWS.COM', + 'S3.US-EAST-2.AMAZONAWS.COM', + 'S3.US-GOV-EAST-1.AMAZONAWS.COM', + 'S3.US-GOV-WEST-1.AMAZONAWS.COM', + 'S3.US-WEST-1.AMAZONAWS.COM', + 'S3.US-WEST-2.AMAZONAWS.COM', + 'SA-EAST-1.ELASTICBEANSTALK.COM', + 'SA.COM', + 'SAKURATAN.COM', + 'SAKURAWEB.COM', + 'SAME-APP.COM', + 'SAME-PREVIEW.COM', + 'SAVES-THE-WHALES.COM', + 'SCRYSEC.COM', + 'SECURITYTACTICS.COM', + 'SELFIP.COM', + 'SELLS-FOR-LESS.COM', + 'SELLS-FOR-U.COM', + 'SERVEBBS.COM', + 'SERVEBEER.COM', + 'SERVECOUNTERSTRIKE.COM', + 'SERVEEXCHANGE.COM', + 'SERVEFTP.COM', + 'SERVEGAME.COM', + 'SERVEHALFLIFE.COM', + 'SERVEHTTP.COM', + 'SERVEHUMOUR.COM', + 'SERVEIRC.COM', + 'SERVEMP3.COM', + 'SERVEP2P.COM', + 'SERVEPICS.COM', + 'SERVEQUAKE.COM', + 'SERVESARCASM.COM', + 'SHOPITSITE.COM', + 'SIIITES.COM', + 'SIMPLE-URL.COM', + 'SIMPLESITE.COM', + 'SINAAPP.COM', + 'SITE.TB-HOSTING.COM', + 'SMUSHCDN.COM', + 'SPACE-TO-RENT.COM', + 'SPHINX.MYTHIC-BEASTS.COM', + 'STACKHERO-NETWORK.COM', + 'STATIC.OBSERVABLEUSERCONTENT.COM', + 'STRAPIAPP.COM', + 'STREAK-LINK.COM', + 'STREAKLINKS.COM', + 'STREAKUSERCONTENT.COM', + 'STREAMLITAPP.COM', + 'STUFFTOREAD.COM', + 'SUBSC-PAY.COM', + 'TAVEUSERCONTENT.COM', + 'TEACHES-YOGA.COM', + 'TEMP-DNS.COM', + 'THEWORKPC.COM', + 'THINGDUSTDATA.COM', + 'TOWNNEWS-STAGING.COM', + 'TRY-SNOWPLOW.COM', + 'TRYCLOUDFLARE.COM', + 'TULEAP-PARTNERS.COM', + 'U2-LOCAL.XNBAY.COM', + 'U2.XNBAY.COM', + 'UK.COM', + 'UNUSUALPERSON.COM', + 'UPSUNAPP.COM', + 'US-1.EVENNODE.COM', + 'US-2.EVENNODE.COM', + 'US-3.EVENNODE.COM', + 'US-4.EVENNODE.COM', + 'US-EAST-1.AMAZONAWS.COM', + 'US-EAST-1.ELASTICBEANSTALK.COM', + 'US-EAST-2.ELASTICBEANSTALK.COM', + 'US-GOV-EAST-1.ELASTICBEANSTALK.COM', + 'US-GOV-WEST-1.ELASTICBEANSTALK.COM', + 'US-WEST-1.ELASTICBEANSTALK.COM', + 'US-WEST-2.ELASTICBEANSTALK.COM', + 'US.COM', + 'US1-PLENIT.COM', + 'VFS.CLOUD9.AF-SOUTH-1.AMAZONAWS.COM', + 'VFS.CLOUD9.AP-EAST-1.AMAZONAWS.COM', + 'VFS.CLOUD9.AP-NORTHEAST-1.AMAZONAWS.COM', + 'VFS.CLOUD9.AP-NORTHEAST-2.AMAZONAWS.COM', + 'VFS.CLOUD9.AP-NORTHEAST-3.AMAZONAWS.COM', + 'VFS.CLOUD9.AP-SOUTH-1.AMAZONAWS.COM', + 'VFS.CLOUD9.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'VFS.CLOUD9.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'VFS.CLOUD9.CA-CENTRAL-1.AMAZONAWS.COM', + 'VFS.CLOUD9.EU-CENTRAL-1.AMAZONAWS.COM', + 'VFS.CLOUD9.EU-NORTH-1.AMAZONAWS.COM', + 'VFS.CLOUD9.EU-SOUTH-1.AMAZONAWS.COM', + 'VFS.CLOUD9.EU-WEST-1.AMAZONAWS.COM', + 'VFS.CLOUD9.EU-WEST-2.AMAZONAWS.COM', + 'VFS.CLOUD9.EU-WEST-3.AMAZONAWS.COM', + 'VFS.CLOUD9.IL-CENTRAL-1.AMAZONAWS.COM', + 'VFS.CLOUD9.ME-SOUTH-1.AMAZONAWS.COM', + 'VFS.CLOUD9.SA-EAST-1.AMAZONAWS.COM', + 'VFS.CLOUD9.US-EAST-1.AMAZONAWS.COM', + 'VFS.CLOUD9.US-EAST-2.AMAZONAWS.COM', + 'VFS.CLOUD9.US-WEST-1.AMAZONAWS.COM', + 'VFS.CLOUD9.US-WEST-2.AMAZONAWS.COM', + 'VIPSINAAPP.COM', + 'VS.MYTHIC-BEASTS.COM', + 'W-CORP-STATICBLITZ.COM', + 'W-CREDENTIALLESS-STATICBLITZ.COM', + 'W-STATICBLITZ.COM', + 'WAFFLECELL.COM', + 'WEBADORSITE.COM', + 'WEBSPACE-HOST.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.AF-SOUTH-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.AP-EAST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.AP-NORTHEAST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.AP-NORTHEAST-2.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.AP-NORTHEAST-3.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.AP-SOUTH-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.CA-CENTRAL-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.EU-CENTRAL-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.EU-NORTH-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.EU-SOUTH-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.EU-WEST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.EU-WEST-2.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.EU-WEST-3.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.IL-CENTRAL-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.ME-SOUTH-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.SA-EAST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.US-EAST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.US-EAST-2.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.US-WEST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.AWS-CLOUD9.US-WEST-2.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.AF-SOUTH-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.AP-EAST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.AP-NORTHEAST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.AP-NORTHEAST-2.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.AP-NORTHEAST-3.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.AP-SOUTH-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.AP-SOUTHEAST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.AP-SOUTHEAST-2.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.CA-CENTRAL-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.EU-CENTRAL-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.EU-NORTH-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.EU-SOUTH-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.EU-WEST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.EU-WEST-2.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.EU-WEST-3.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.ME-SOUTH-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.SA-EAST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.US-EAST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.US-EAST-2.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.US-WEST-1.AMAZONAWS.COM', + 'WEBVIEW-ASSETS.CLOUD9.US-WEST-2.AMAZONAWS.COM', + 'WIREDBLADEHOSTING.COM', + 'WITHGOOGLE.COM', + 'WITHYOUTUBE.COM', + 'WIXSITE.COM', + 'WIXSTUDIO.COM', + 'WOLTLAB-DEMO.COM', + 'WORKISBORING.COM', + 'WPDEVCLOUD.COM', + 'WPENGINEPOWERED.COM', + 'WPHOSTEDMAIL.COM', + 'WPMUCDN.COM', + 'WRITESTHISBLOG.COM', + 'X.MYTHIC-BEASTS.COM', + 'X0.COM', + 'XEN.PRGMR.COM', + 'XNBAY.COM', + 'XTOOLDEVICE.COM', + 'YALI.MYTHIC-BEASTS.COM', + 'YOLASITE.COM', + 'ZA.COM', + ], + 'wildcards' => [ + '001.TEST.CODE-BUILDER-STG.PLATFORM.SALESFORCE.COM', + '0EMM.COM', + 'AF-SOUTH-1.AIRFLOW.AMAZONAWS.COM', + 'AF-SOUTH-1.RDS.AMAZONAWS.COM', + 'AP-EAST-1.AIRFLOW.AMAZONAWS.COM', + 'AP-EAST-1.RDS.AMAZONAWS.COM', + 'AP-EAST-2.RDS.AMAZONAWS.COM', + 'AP-NORTHEAST-1.AIRFLOW.AMAZONAWS.COM', + 'AP-NORTHEAST-1.RDS.AMAZONAWS.COM', + 'AP-NORTHEAST-2.AIRFLOW.AMAZONAWS.COM', + 'AP-NORTHEAST-2.RDS.AMAZONAWS.COM', + 'AP-NORTHEAST-3.AIRFLOW.AMAZONAWS.COM', + 'AP-NORTHEAST-3.RDS.AMAZONAWS.COM', + 'AP-SOUTH-1.AIRFLOW.AMAZONAWS.COM', + 'AP-SOUTH-1.RDS.AMAZONAWS.COM', + 'AP-SOUTH-2.AIRFLOW.AMAZONAWS.COM', + 'AP-SOUTH-2.RDS.AMAZONAWS.COM', + 'AP-SOUTHEAST-1.AIRFLOW.AMAZONAWS.COM', + 'AP-SOUTHEAST-1.RDS.AMAZONAWS.COM', + 'AP-SOUTHEAST-2.AIRFLOW.AMAZONAWS.COM', + 'AP-SOUTHEAST-2.RDS.AMAZONAWS.COM', + 'AP-SOUTHEAST-3.AIRFLOW.AMAZONAWS.COM', + 'AP-SOUTHEAST-3.RDS.AMAZONAWS.COM', + 'AP-SOUTHEAST-4.AIRFLOW.AMAZONAWS.COM', + 'AP-SOUTHEAST-4.RDS.AMAZONAWS.COM', + 'AP-SOUTHEAST-5.AIRFLOW.AMAZONAWS.COM', + 'AP-SOUTHEAST-5.RDS.AMAZONAWS.COM', + 'AP-SOUTHEAST-6.RDS.AMAZONAWS.COM', + 'AP-SOUTHEAST-7.AIRFLOW.AMAZONAWS.COM', + 'AP-SOUTHEAST-7.RDS.AMAZONAWS.COM', + 'AUIUSERCONTENT.COM', + 'AWSAPPRUNNER.COM', + 'BUILDER.CODE.COM', + 'CA-CENTRAL-1.AIRFLOW.AMAZONAWS.COM', + 'CA-CENTRAL-1.RDS.AMAZONAWS.COM', + 'CA-WEST-1.AIRFLOW.AMAZONAWS.COM', + 'CA-WEST-1.RDS.AMAZONAWS.COM', + 'COMPUTE-1.AMAZONAWS.COM', + 'COMPUTE.AMAZONAWS.COM', + 'CUSTOMER-OCI.COM', + 'DEV-BUILDER.CODE.COM', + 'DEV.ADOBEAEMCLOUD.COM', + 'DEVINAPPS.COM', + 'DIGITALOCEANSPACES.COM', + 'ELB.AMAZONAWS.COM', + 'EU-CENTRAL-1.AIRFLOW.AMAZONAWS.COM', + 'EU-CENTRAL-1.RDS.AMAZONAWS.COM', + 'EU-CENTRAL-2.AIRFLOW.AMAZONAWS.COM', + 'EU-CENTRAL-2.RDS.AMAZONAWS.COM', + 'EU-NORTH-1.AIRFLOW.AMAZONAWS.COM', + 'EU-SOUTH-1.AIRFLOW.AMAZONAWS.COM', + 'EU-SOUTH-2.AIRFLOW.AMAZONAWS.COM', + 'EU-WEST-1.AIRFLOW.AMAZONAWS.COM', + 'EU-WEST-1.RDS.AMAZONAWS.COM', + 'EU-WEST-2.AIRFLOW.AMAZONAWS.COM', + 'EU-WEST-2.RDS.AMAZONAWS.COM', + 'EU-WEST-3.AIRFLOW.AMAZONAWS.COM', + 'EU-WEST-3.RDS.AMAZONAWS.COM', + 'IL-CENTRAL-1.AIRFLOW.AMAZONAWS.COM', + 'IL-CENTRAL-1.RDS.AMAZONAWS.COM', + 'LINODEOBJECTS.COM', + 'LUTRAUSERCONTENT.COM', + 'ME-CENTRAL-1.AIRFLOW.AMAZONAWS.COM', + 'ME-CENTRAL-1.RDS.AMAZONAWS.COM', + 'ME-SOUTH-1.AIRFLOW.AMAZONAWS.COM', + 'ME-SOUTH-1.RDS.AMAZONAWS.COM', + 'MX-CENTRAL-1.RDS.AMAZONAWS.COM', + 'NODEBALANCER.LINODE.COM', + 'OAIUSERCONTENT.COM', + 'OCI.CUSTOMER-OCI.COM', + 'OCP.CUSTOMER-OCI.COM', + 'OCS.CUSTOMER-OCI.COM', + 'ORACLECLOUDAPPS.COM', + 'ORACLEGOVCLOUDAPPS.COM', + 'PAYWHIRL.COM', + 'QUALYHQPARTNER.COM', + 'QUALYHQPORTAL.COM', + 'QUIPELEMENTS.COM', + 'R.APPSPOT.COM', + 'SA-EAST-1.AIRFLOW.AMAZONAWS.COM', + 'SA-EAST-1.RDS.AMAZONAWS.COM', + 'SERVICES.CLEVER-CLOUD.COM', + 'STG-BUILDER.CODE.COM', + 'US-EAST-1.AIRFLOW.AMAZONAWS.COM', + 'US-EAST-1.RDS.AMAZONAWS.COM', + 'US-EAST-2.AIRFLOW.AMAZONAWS.COM', + 'US-EAST-2.RDS.AMAZONAWS.COM', + 'US-GOV-EAST-1.RDS.AMAZONAWS.COM', + 'US-GOV-WEST-1.RDS.AMAZONAWS.COM', + 'US-NORTHEAST-1.RDS.AMAZONAWS.COM', + 'US-WEST-1.AIRFLOW.AMAZONAWS.COM', + 'US-WEST-1.RDS.AMAZONAWS.COM', + 'US-WEST-2.AIRFLOW.AMAZONAWS.COM', + 'US-WEST-2.RDS.AMAZONAWS.COM', + 'VULTROBJECTS.COM', + ], +]; diff --git a/data/domain/public-suffix/COMMUNITY.php b/data/domain/public-suffix/COMMUNITY.php new file mode 100644 index 00000000..dffd4636 --- /dev/null +++ b/data/domain/public-suffix/COMMUNITY.php @@ -0,0 +1,12 @@ + [], + 'rules' => [ + 'MYFORUM.COMMUNITY', + 'NOG.COMMUNITY', + 'RAVENDB.COMMUNITY', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/COOL.php b/data/domain/public-suffix/COOL.php new file mode 100644 index 00000000..533de1e1 --- /dev/null +++ b/data/domain/public-suffix/COOL.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'DE.COOL', + 'ELEMENTOR.COOL', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/CR.php b/data/domain/public-suffix/CR.php index 61374a88..0d75ba41 100644 --- a/data/domain/public-suffix/CR.php +++ b/data/domain/public-suffix/CR.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.CR', - 'CO.CR', - 'ED.CR', - 'FI.CR', - 'GO.CR', - 'OR.CR', - 'SA.CR', + 'exceptions' => [], + 'rules' => [ + 'AC.CR', + 'CO.CR', + 'ED.CR', + 'FI.CR', + 'GO.CR', + 'OR.CR', + 'SA.CR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CU.php b/data/domain/public-suffix/CU.php index 39bf89dc..eda06424 100644 --- a/data/domain/public-suffix/CU.php +++ b/data/domain/public-suffix/CU.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.CU', - 'EDU.CU', - 'GOB.CU', - 'INF.CU', - 'NAT.CU', - 'NET.CU', - 'ORG.CU', + 'exceptions' => [], + 'rules' => [ + 'COM.CU', + 'EDU.CU', + 'GOB.CU', + 'INF.CU', + 'NAT.CU', + 'NET.CU', + 'ORG.CU', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CV.php b/data/domain/public-suffix/CV.php index 8b710440..d2610a4b 100644 --- a/data/domain/public-suffix/CV.php +++ b/data/domain/public-suffix/CV.php @@ -2,12 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.CV', - 'EDU.CV', - 'ID.CV', - 'INT.CV', - 'NET.CV', - 'NOME.CV', - 'ORG.CV', - 'PUBL.CV', + 'exceptions' => [], + 'rules' => [ + 'COM.CV', + 'EDU.CV', + 'ID.CV', + 'INT.CV', + 'NET.CV', + 'NOME.CV', + 'ORG.CV', + 'PUBL.CV', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CW.php b/data/domain/public-suffix/CW.php index afa11ef0..28922bd0 100644 --- a/data/domain/public-suffix/CW.php +++ b/data/domain/public-suffix/CW.php @@ -2,8 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.CW', - 'EDU.CW', - 'NET.CW', - 'ORG.CW', + 'exceptions' => [], + 'rules' => [ + 'COM.CW', + 'EDU.CW', + 'NET.CW', + 'ORG.CW', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CX.php b/data/domain/public-suffix/CX.php index 970560ee..1e6c4e99 100644 --- a/data/domain/public-suffix/CX.php +++ b/data/domain/public-suffix/CX.php @@ -2,5 +2,19 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.CX', + 'exceptions' => [], + 'rules' => [ + 'ASSESSMENTS.CX', + 'ATH.CX', + 'CALCULATORS.CX', + 'CLOUDNS.CX', + 'FUNNELS.CX', + 'GOV.CX', + 'INFO.CX', + 'PAYNOW.CX', + 'QUIZZES.CX', + 'RESEARCHED.CX', + 'TESTS.CX', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CY.php b/data/domain/public-suffix/CY.php index c3f52646..cbf0fbe7 100644 --- a/data/domain/public-suffix/CY.php +++ b/data/domain/public-suffix/CY.php @@ -2,16 +2,21 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.CY', - 'BIZ.CY', - 'COM.CY', - 'EKLOGES.CY', - 'GOV.CY', - 'LTD.CY', - 'MIL.CY', - 'NET.CY', - 'ORG.CY', - 'PRESS.CY', - 'PRO.CY', - 'TM.CY', + 'exceptions' => [], + 'rules' => [ + 'AC.CY', + 'BIZ.CY', + 'COM.CY', + 'EKLOGES.CY', + 'GOV.CY', + 'J.SCALEFORCE.COM.CY', + 'LTD.CY', + 'MIL.CY', + 'NET.CY', + 'ORG.CY', + 'PRESS.CY', + 'PRO.CY', + 'TM.CY', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/CZ.php b/data/domain/public-suffix/CZ.php index 76aa4c35..895425bd 100644 --- a/data/domain/public-suffix/CZ.php +++ b/data/domain/public-suffix/CZ.php @@ -2,5 +2,18 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.CZ', + 'exceptions' => [], + 'rules' => [ + 'CO.CZ', + 'CUSTOM.METACENTRUM.CZ', + 'E4.CZ', + 'FLT.CLOUD.MUNI.CZ', + 'GOV.CZ', + 'REALM.CZ', + 'RSC.CONTENTPROXY9.CZ', + 'USR.CLOUD.MUNI.CZ', + ], + 'wildcards' => [ + 'CLOUD.METACENTRUM.CZ', + ], ]; diff --git a/data/domain/public-suffix/DE.php b/data/domain/public-suffix/DE.php new file mode 100644 index 00000000..40387ff9 --- /dev/null +++ b/data/domain/public-suffix/DE.php @@ -0,0 +1,81 @@ + [], + 'rules' => [ + '123WEBSEITE.DE', + '12HP.DE', + '2IX.DE', + '4LIMA.DE', + 'BARSY.DE', + 'BPLACED.DE', + 'CO.DE', + 'COM.DE', + 'COMMUNITY-PRO.DE', + 'CUSTOMER.SPEEDPARTNER.DE', + 'DDNSS.DE', + 'DISKUSSIONSBEREICH.DE', + 'DNSHOME.DE', + 'DNSUPDATER.DE', + 'DYN-BERLIN.DE', + 'DYN-IP24.DE', + 'DYN.COSIDNS.DE', + 'DYN.DDNSS.DE', + 'DYN.HOME-WEBSERVER.DE', + 'DYNAMISCHES-DNS.DE', + 'DYNDNS.DDNSS.DE', + 'DYNDNS1.DE', + 'FIREWALL-GATEWAY.DE', + 'FUETTERTDASNETZ.DE', + 'GIT-REPOS.DE', + 'GOIP.DE', + 'HOME-WEBSERVER.DE', + 'IN-BERLIN.DE', + 'IN-BRB.DE', + 'IN-BUTTER.DE', + 'IN-DSL.DE', + 'IN-VPN.DE', + 'INTERNET-DNS.DE', + 'IO.NOC.RUHR-UNI-BOCHUM.DE', + 'ISERVSCHULE.DE', + 'ISTEINGEEK.DE', + 'ISTMEIN.DE', + 'KEYMACHINE.DE', + 'L-O-G-I-N.DE', + 'LCUBE-SERVER.DE', + 'LEBTIMNETZ.DE', + 'LEITUNGSEN.DE', + 'LIMA-CITY.DE', + 'LOGOIP.DE', + 'MEIN-ISERV.DE', + 'MY-GATEWAY.DE', + 'MY-ROUTER.DE', + 'MY.DE', + 'MYHOME-SERVER.DE', + 'MYSPREADSHOP.DE', + 'PAGES-RESEARCH.IT.HS-HEILBRONN.DE', + 'PAGES.IT.HS-HEILBRONN.DE', + 'RUB.DE', + 'RUHR-UNI-BOCHUM.DE', + 'SCHULDOCK.DE', + 'SCHULPLATTFORM.DE', + 'SCHULSERVER.DE', + 'SPDNS.DE', + 'SQUARE7.DE', + 'SVN-REPOS.DE', + 'TAIFUN-DNS.DE', + 'TEST-ISERV.DE', + 'TRAEUMTGERADE.DE', + 'VIRTUAL-USER.DE', + 'VIRTUALUSER.DE', + 'WEBSPACECONFIG.DE', + 'XN--GNSTIGBESTELLEN-ZVB.DE', + 'XN--GNSTIGLIEFERN-WOB.DE', + ], + 'wildcards' => [ + 'BWCLOUD-OS-INSTANCE.DE', + 'FRUSKY.DE', + 'XENONCONNECT.DE', + ], +]; diff --git a/data/domain/public-suffix/DESIGN.php b/data/domain/public-suffix/DESIGN.php new file mode 100644 index 00000000..80ad3c2a --- /dev/null +++ b/data/domain/public-suffix/DESIGN.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'BSS.DESIGN', + 'GRAPHIC.DESIGN', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/DEV.php b/data/domain/public-suffix/DEV.php new file mode 100644 index 00000000..0406125d --- /dev/null +++ b/data/domain/public-suffix/DEV.php @@ -0,0 +1,107 @@ + [], + 'rules' => [ + 'API.LP.DEV', + 'ARCHER.REPLIT.DEV', + 'BARSY.DEV', + 'BEARBLOG.DEV', + 'BONES.REPLIT.DEV', + 'BOTDASH.DEV', + 'BRAVE.DEV', + 'CANARY.REPLIT.DEV', + 'DENO-STAGING.DEV', + 'DENO.DEV', + 'DETA.DEV', + 'ERP.DEV', + 'FLY.DEV', + 'GITHUBPREVIEW.DEV', + 'GLOBAL.REPLIT.DEV', + 'GREBEDOC.DEV', + 'HACKER.REPLIT.DEV', + 'HRSN.DEV', + 'ID.REPLIT.DEV', + 'IS-A-FULLSTACK.DEV', + 'IS-A-GOOD.DEV', + 'IS-A.DEV', + 'IS-COOL.DEV', + 'IS-NOT-A.DEV', + 'ISERV.DEV', + 'JANEWAY.REPLIT.DEV', + 'KIM.REPLIT.DEV', + 'KIRA.REPLIT.DEV', + 'KIRK.REPLIT.DEV', + 'LEAPCELL.DEV', + 'LOCALPLAYER.DEV', + 'LOGINLINE.DEV', + 'LP.DEV', + 'MEDIATECH.DEV', + 'MOCHA-SANDBOX.DEV', + 'MODX.DEV', + 'MYADDR.DEV', + 'NGROK-FREE.DEV', + 'NGROK.DEV', + 'OBJECTS.LP.DEV', + 'ODO.REPLIT.DEV', + 'PAGES.DEV', + 'PANEL.DEV', + 'PARIS.REPLIT.DEV', + 'PICARD.REPLIT.DEV', + 'PIKE.REPLIT.DEV', + 'PLATTER-APP.DEV', + 'PRERELEASE.REPLIT.DEV', + 'R2.DEV', + 'REED.REPLIT.DEV', + 'RELAY.EVERVAULT.DEV', + 'REPLIT.DEV', + 'RIKER.REPLIT.DEV', + 'RUNCONTAINERS.DEV', + 'SISKO.REPLIT.DEV', + 'SPOCK.REPLIT.DEV', + 'STAGING.REPLIT.DEV', + 'SULU.REPLIT.DEV', + 'TARPIT.REPLIT.DEV', + 'TEAMS.REPLIT.DEV', + 'TUCKER.REPLIT.DEV', + 'VERCEL.DEV', + 'WEB.ERP.DEV', + 'WESLEY.REPLIT.DEV', + 'WORF.REPLIT.DEV', + 'WORKERS.DEV', + 'XMIT.DEV', + ], + 'wildcards' => [ + 'AA.CRM.DEV', + 'AB.CRM.DEV', + 'AC.CRM.DEV', + 'AD.CRM.DEV', + 'AE.CRM.DEV', + 'AF.CRM.DEV', + 'CI.CRM.DEV', + 'D.CRM.DEV', + 'GATEWAY.DEV', + 'INBROWSER.DEV', + 'LCL.DEV', + 'LCLSTAGE.DEV', + 'PA.CRM.DEV', + 'PB.CRM.DEV', + 'PC.CRM.DEV', + 'PD.CRM.DEV', + 'PE.CRM.DEV', + 'PF.CRM.DEV', + 'S.BRAVE.DEV', + 'STG.DEV', + 'STGSTAGE.DEV', + 'USER.LOCALCERT.DEV', + 'W.CRM.DEV', + 'WA.CRM.DEV', + 'WB.CRM.DEV', + 'WC.CRM.DEV', + 'WD.CRM.DEV', + 'WE.CRM.DEV', + 'WEBHARE.DEV', + 'WF.CRM.DEV', + ], +]; diff --git a/data/domain/public-suffix/DIGITAL.php b/data/domain/public-suffix/DIGITAL.php new file mode 100644 index 00000000..c8608bd2 --- /dev/null +++ b/data/domain/public-suffix/DIGITAL.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'CLOUDAPPS.DIGITAL', + 'LONDON.CLOUDAPPS.DIGITAL', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/DIRECT.php b/data/domain/public-suffix/DIRECT.php new file mode 100644 index 00000000..041445cf --- /dev/null +++ b/data/domain/public-suffix/DIRECT.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'LIBP2P.DIRECT', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/DIY.php b/data/domain/public-suffix/DIY.php new file mode 100644 index 00000000..203b61f0 --- /dev/null +++ b/data/domain/public-suffix/DIY.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'DISCOURSE.DIY', + 'IMAGINE.DIY', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/DK.php b/data/domain/public-suffix/DK.php new file mode 100644 index 00000000..76a4e3ad --- /dev/null +++ b/data/domain/public-suffix/DK.php @@ -0,0 +1,16 @@ + [], + 'rules' => [ + '123HJEMMESIDE.DK', + 'BIZ.DK', + 'CO.DK', + 'FIRM.DK', + 'MYSPREADSHOP.DK', + 'REG.DK', + 'STORE.DK', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/DM.php b/data/domain/public-suffix/DM.php index 87c553a5..4674dc29 100644 --- a/data/domain/public-suffix/DM.php +++ b/data/domain/public-suffix/DM.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.DM', - 'COM.DM', - 'EDU.DM', - 'GOV.DM', - 'NET.DM', - 'ORG.DM', + 'exceptions' => [], + 'rules' => [ + 'CO.DM', + 'COM.DM', + 'EDU.DM', + 'GOV.DM', + 'NET.DM', + 'ORG.DM', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/DO.php b/data/domain/public-suffix/DO.php index 3b55e054..a2abcc58 100644 --- a/data/domain/public-suffix/DO.php +++ b/data/domain/public-suffix/DO.php @@ -2,14 +2,18 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ART.DO', - 'COM.DO', - 'EDU.DO', - 'GOB.DO', - 'GOV.DO', - 'MIL.DO', - 'NET.DO', - 'ORG.DO', - 'SLD.DO', - 'WEB.DO', + 'exceptions' => [], + 'rules' => [ + 'ART.DO', + 'COM.DO', + 'EDU.DO', + 'GOB.DO', + 'GOV.DO', + 'MIL.DO', + 'NET.DO', + 'ORG.DO', + 'SLD.DO', + 'WEB.DO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/DZ.php b/data/domain/public-suffix/DZ.php index 0abf7577..6778bff3 100644 --- a/data/domain/public-suffix/DZ.php +++ b/data/domain/public-suffix/DZ.php @@ -2,14 +2,18 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ART.DZ', - 'ASSO.DZ', - 'COM.DZ', - 'EDU.DZ', - 'GOV.DZ', - 'NET.DZ', - 'ORG.DZ', - 'POL.DZ', - 'SOC.DZ', - 'TM.DZ', + 'exceptions' => [], + 'rules' => [ + 'ART.DZ', + 'ASSO.DZ', + 'COM.DZ', + 'EDU.DZ', + 'GOV.DZ', + 'NET.DZ', + 'ORG.DZ', + 'POL.DZ', + 'SOC.DZ', + 'TM.DZ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/EC.php b/data/domain/public-suffix/EC.php index cb5e7992..0055dd55 100644 --- a/data/domain/public-suffix/EC.php +++ b/data/domain/public-suffix/EC.php @@ -2,55 +2,61 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ABG.EC', - 'ADM.EC', - 'AGRON.EC', - 'ARQT.EC', - 'ART.EC', - 'BAR.EC', - 'CHEF.EC', - 'COM.EC', - 'CONT.EC', - 'CPA.EC', - 'CUE.EC', - 'DENT.EC', - 'DGN.EC', - 'DISCO.EC', - 'DOC.EC', - 'EDU.EC', - 'ENG.EC', - 'ESM.EC', - 'FIN.EC', - 'FOT.EC', - 'GAL.EC', - 'GOB.EC', - 'GOV.EC', - 'GYE.EC', - 'IBR.EC', - 'INFO.EC', - 'K12.EC', - 'LAT.EC', - 'LOJ.EC', - 'MED.EC', - 'MIL.EC', - 'MKTG.EC', - 'MON.EC', - 'NET.EC', - 'NTR.EC', - 'ODONT.EC', - 'ORG.EC', - 'PRO.EC', - 'PROF.EC', - 'PSIC.EC', - 'PSIQ.EC', - 'PUB.EC', - 'RIO.EC', - 'RRPP.EC', - 'SAL.EC', - 'TECH.EC', - 'TUL.EC', - 'TUR.EC', - 'UIO.EC', - 'VET.EC', - 'XXX.EC', + 'exceptions' => [], + 'rules' => [ + 'ABG.EC', + 'ADM.EC', + 'AGRON.EC', + 'ARQT.EC', + 'ART.EC', + 'BAR.EC', + 'BASE.EC', + 'CHEF.EC', + 'COM.EC', + 'CONT.EC', + 'CPA.EC', + 'CUE.EC', + 'DENT.EC', + 'DGN.EC', + 'DISCO.EC', + 'DOC.EC', + 'EDU.EC', + 'ENG.EC', + 'ESM.EC', + 'FIN.EC', + 'FOT.EC', + 'GAL.EC', + 'GOB.EC', + 'GOV.EC', + 'GYE.EC', + 'IBR.EC', + 'INFO.EC', + 'K12.EC', + 'LAT.EC', + 'LOJ.EC', + 'MED.EC', + 'MIL.EC', + 'MKTG.EC', + 'MON.EC', + 'NET.EC', + 'NTR.EC', + 'ODONT.EC', + 'OFFICIAL.EC', + 'ORG.EC', + 'PRO.EC', + 'PROF.EC', + 'PSIC.EC', + 'PSIQ.EC', + 'PUB.EC', + 'RIO.EC', + 'RRPP.EC', + 'SAL.EC', + 'TECH.EC', + 'TUL.EC', + 'TUR.EC', + 'UIO.EC', + 'VET.EC', + 'XXX.EC', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/EDU.php b/data/domain/public-suffix/EDU.php new file mode 100644 index 00000000..754892a9 --- /dev/null +++ b/data/domain/public-suffix/EDU.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'GIT-PAGES.RIT.EDU', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/EDUCATION.php b/data/domain/public-suffix/EDUCATION.php new file mode 100644 index 00000000..76a81dd2 --- /dev/null +++ b/data/domain/public-suffix/EDUCATION.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'CO.EDUCATION', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/EE.php b/data/domain/public-suffix/EE.php index 68fa573f..eddbf6c3 100644 --- a/data/domain/public-suffix/EE.php +++ b/data/domain/public-suffix/EE.php @@ -2,14 +2,18 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AIP.EE', - 'COM.EE', - 'EDU.EE', - 'FIE.EE', - 'GOV.EE', - 'LIB.EE', - 'MED.EE', - 'ORG.EE', - 'PRI.EE', - 'RIIK.EE', + 'exceptions' => [], + 'rules' => [ + 'AIP.EE', + 'COM.EE', + 'EDU.EE', + 'FIE.EE', + 'GOV.EE', + 'LIB.EE', + 'MED.EE', + 'ORG.EE', + 'PRI.EE', + 'RIIK.EE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/EG.php b/data/domain/public-suffix/EG.php index 99d14c39..74df22b9 100644 --- a/data/domain/public-suffix/EG.php +++ b/data/domain/public-suffix/EG.php @@ -2,18 +2,22 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.EG', - 'COM.EG', - 'EDU.EG', - 'EUN.EG', - 'GOV.EG', - 'INFO.EG', - 'ME.EG', - 'MIL.EG', - 'NAME.EG', - 'NET.EG', - 'ORG.EG', - 'SCI.EG', - 'SPORT.EG', - 'TV.EG', + 'exceptions' => [], + 'rules' => [ + 'AC.EG', + 'COM.EG', + 'EDU.EG', + 'EUN.EG', + 'GOV.EG', + 'INFO.EG', + 'ME.EG', + 'MIL.EG', + 'NAME.EG', + 'NET.EG', + 'ORG.EG', + 'SCI.EG', + 'SPORT.EG', + 'TV.EG', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/EMAIL.php b/data/domain/public-suffix/EMAIL.php new file mode 100644 index 00000000..55838918 --- /dev/null +++ b/data/domain/public-suffix/EMAIL.php @@ -0,0 +1,12 @@ + [], + 'rules' => [ + 'ON.CRISP.EMAIL', + 'P.TAWK.EMAIL', + 'P.TAWKTO.EMAIL', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/ER.php b/data/domain/public-suffix/ER.php new file mode 100644 index 00000000..971cf7ad --- /dev/null +++ b/data/domain/public-suffix/ER.php @@ -0,0 +1,10 @@ + [], + 'rules' => [], + 'wildcards' => [ + 'ER', + ], +]; diff --git a/data/domain/public-suffix/ES.php b/data/domain/public-suffix/ES.php index 9439b7bf..a14141c0 100644 --- a/data/domain/public-suffix/ES.php +++ b/data/domain/public-suffix/ES.php @@ -2,9 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.ES', - 'EDU.ES', - 'GOB.ES', - 'NOM.ES', - 'ORG.ES', + 'exceptions' => [], + 'rules' => [ + '123MIWEB.ES', + 'COM.ES', + 'EDU.ES', + 'GOB.ES', + 'MYSPREADSHOP.ES', + 'NOM.ES', + 'ORG.ES', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ESTATE.php b/data/domain/public-suffix/ESTATE.php new file mode 100644 index 00000000..18960675 --- /dev/null +++ b/data/domain/public-suffix/ESTATE.php @@ -0,0 +1,10 @@ + [], + 'rules' => [], + 'wildcards' => [ + 'COMPUTE.ESTATE', + ], +]; diff --git a/data/domain/public-suffix/ET.php b/data/domain/public-suffix/ET.php index ebf084ec..2f82c950 100644 --- a/data/domain/public-suffix/ET.php +++ b/data/domain/public-suffix/ET.php @@ -2,12 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BIZ.ET', - 'COM.ET', - 'EDU.ET', - 'GOV.ET', - 'INFO.ET', - 'NAME.ET', - 'NET.ET', - 'ORG.ET', + 'exceptions' => [], + 'rules' => [ + 'BIZ.ET', + 'COM.ET', + 'EDU.ET', + 'GOV.ET', + 'INFO.ET', + 'NAME.ET', + 'NET.ET', + 'ORG.ET', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/EU.php b/data/domain/public-suffix/EU.php new file mode 100644 index 00000000..6ea0995f --- /dev/null +++ b/data/domain/public-suffix/EU.php @@ -0,0 +1,20 @@ + [], + 'rules' => [ + 'AUTH.COGNITO-IDP.EUSC-DE-EAST-1.ON.AMAZONWEBSERVICES.EU', + 'BARSY.EU', + 'CLOUDNS.EU', + 'DEUXFLEURS.EU', + 'DIRECTWP.EU', + 'JELASTIC.DOGADO.EU', + 'PRVW.EU', + 'SPDNS.EU', + ], + 'wildcards' => [ + 'NXA.EU', + 'TRANSURL.EU', + ], +]; diff --git a/data/domain/public-suffix/EUS.php b/data/domain/public-suffix/EUS.php new file mode 100644 index 00000000..0dea2234 --- /dev/null +++ b/data/domain/public-suffix/EUS.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'USER.PARTY.EUS', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/EVENTS.php b/data/domain/public-suffix/EVENTS.php new file mode 100644 index 00000000..71d60a0c --- /dev/null +++ b/data/domain/public-suffix/EVENTS.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'CO.EVENTS', + 'KOOBIN.EVENTS', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/FARM.php b/data/domain/public-suffix/FARM.php new file mode 100644 index 00000000..a319b6b3 --- /dev/null +++ b/data/domain/public-suffix/FARM.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'STORJ.FARM', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/FI.php b/data/domain/public-suffix/FI.php index 4c34be8e..f7e7a606 100644 --- a/data/domain/public-suffix/FI.php +++ b/data/domain/public-suffix/FI.php @@ -2,5 +2,18 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ALAND.FI', + 'exceptions' => [], + 'rules' => [ + '123KOTISIVU.FI', + 'ALAND.FI', + 'DEMO.DATACENTER.FI', + 'DY.FI', + 'FI.CLOUDPLATFORM.FI', + 'IKI.FI', + 'KAPSI.FI', + 'MYSPREADSHOP.FI', + 'PAAS.DATACENTER.FI', + 'XN--HKKINEN-5WA.FI', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/FINANCIAL.php b/data/domain/public-suffix/FINANCIAL.php new file mode 100644 index 00000000..e3e67339 --- /dev/null +++ b/data/domain/public-suffix/FINANCIAL.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'CO.FINANCIAL', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/FJ.php b/data/domain/public-suffix/FJ.php index 07d13f66..ea2f254e 100644 --- a/data/domain/public-suffix/FJ.php +++ b/data/domain/public-suffix/FJ.php @@ -2,16 +2,20 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.FJ', - 'BIZ.FJ', - 'COM.FJ', - 'EDU.FJ', - 'GOV.FJ', - 'ID.FJ', - 'INFO.FJ', - 'MIL.FJ', - 'NAME.FJ', - 'NET.FJ', - 'ORG.FJ', - 'PRO.FJ', + 'exceptions' => [], + 'rules' => [ + 'AC.FJ', + 'BIZ.FJ', + 'COM.FJ', + 'EDU.FJ', + 'GOV.FJ', + 'ID.FJ', + 'INFO.FJ', + 'MIL.FJ', + 'NAME.FJ', + 'NET.FJ', + 'ORG.FJ', + 'PRO.FJ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/FK.php b/data/domain/public-suffix/FK.php new file mode 100644 index 00000000..77935b48 --- /dev/null +++ b/data/domain/public-suffix/FK.php @@ -0,0 +1,10 @@ + [], + 'rules' => [], + 'wildcards' => [ + 'FK', + ], +]; diff --git a/data/domain/public-suffix/FM.php b/data/domain/public-suffix/FM.php index 62968f2d..4e0ed3c8 100644 --- a/data/domain/public-suffix/FM.php +++ b/data/domain/public-suffix/FM.php @@ -2,8 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.FM', - 'EDU.FM', - 'NET.FM', - 'ORG.FM', + 'exceptions' => [], + 'rules' => [ + 'COM.FM', + 'EDU.FM', + 'NET.FM', + 'ORG.FM', + 'RADIO.FM', + ], + 'wildcards' => [ + 'USER.FM', + ], ]; diff --git a/data/domain/public-suffix/FR.php b/data/domain/public-suffix/FR.php index eb290ed5..b9fe743b 100644 --- a/data/domain/public-suffix/FR.php +++ b/data/domain/public-suffix/FR.php @@ -2,14 +2,40 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ASSO.FR', - 'COM.FR', - 'GOUV.FR', - 'NOM.FR', - 'PRD.FR', - 'TM.FR', - 'AVOUES.FR', - 'CCI.FR', - 'GRETA.FR', - 'HUISSIER-JUSTICE.FR', + 'exceptions' => [], + 'rules' => [ + '123SITEWEB.FR', + 'AEROPORT.FR', + 'ASSO.FR', + 'AVOCAT.FR', + 'AVOUES.FR', + 'CCI.FR', + 'CHAMBAGRI.FR', + 'CHIRURGIENS-DENTISTES-EN-FRANCE.FR', + 'CHIRURGIENS-DENTISTES.FR', + 'COM.FR', + 'DEDIBOX.FR', + 'EXPERTS-COMPTABLES.FR', + 'FBX-OS.FR', + 'FBXOS.FR', + 'FREEBOX-OS.FR', + 'FREEBOXOS.FR', + 'GOUPILE.FR', + 'GOUV.FR', + 'GRETA.FR', + 'HUISSIER-JUSTICE.FR', + 'KDNS.FR', + 'MEDECIN.FR', + 'MYSPREADSHOP.FR', + 'NOM.FR', + 'NOTAIRES.FR', + 'ON-WEB.FR', + 'PHARMACIEN.FR', + 'PORT.FR', + 'PRD.FR', + 'TM.FR', + 'VETERINAIRE.FR', + 'YNH.FR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GAMES.php b/data/domain/public-suffix/GAMES.php new file mode 100644 index 00000000..79adfce6 --- /dev/null +++ b/data/domain/public-suffix/GAMES.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'PLEY.GAMES', + 'SHEEZY.GAMES', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/GAY.php b/data/domain/public-suffix/GAY.php new file mode 100644 index 00000000..0e1d44bc --- /dev/null +++ b/data/domain/public-suffix/GAY.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'PAGES.GAY', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/GD.php b/data/domain/public-suffix/GD.php index 9f844151..389dfbb0 100644 --- a/data/domain/public-suffix/GD.php +++ b/data/domain/public-suffix/GD.php @@ -2,6 +2,10 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'EDU.GD', - 'GOV.GD', + 'exceptions' => [], + 'rules' => [ + 'EDU.GD', + 'GOV.GD', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GDN.php b/data/domain/public-suffix/GDN.php new file mode 100644 index 00000000..36ee479e --- /dev/null +++ b/data/domain/public-suffix/GDN.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'CNPY.GDN', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/GE.php b/data/domain/public-suffix/GE.php index 02138f31..01e108ab 100644 --- a/data/domain/public-suffix/GE.php +++ b/data/domain/public-suffix/GE.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.GE', - 'EDU.GE', - 'GOV.GE', - 'NET.GE', - 'ORG.GE', - 'PVT.GE', - 'SCHOOL.GE', + 'exceptions' => [], + 'rules' => [ + 'COM.GE', + 'EDU.GE', + 'GOV.GE', + 'NET.GE', + 'ORG.GE', + 'PVT.GE', + 'SCHOOL.GE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GG.php b/data/domain/public-suffix/GG.php index 7dcdf7b0..87653fa5 100644 --- a/data/domain/public-suffix/GG.php +++ b/data/domain/public-suffix/GG.php @@ -2,7 +2,19 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.GG', - 'NET.GG', - 'ORG.GG', + 'exceptions' => [], + 'rules' => [ + 'BOTDASH.GG', + 'CO.GG', + 'D6.PLY.GG', + 'DAEMON.PANEL.GG', + 'KAAS.GG', + 'NET.GG', + 'ORG.GG', + 'PANEL.GG', + 'STACKIT.GG', + ], + 'wildcards' => [ + 'AT.PLY.GG', + ], ]; diff --git a/data/domain/public-suffix/GH.php b/data/domain/public-suffix/GH.php index 10aca09f..953d5426 100644 --- a/data/domain/public-suffix/GH.php +++ b/data/domain/public-suffix/GH.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BIZ.GH', - 'COM.GH', - 'EDU.GH', - 'GOV.GH', - 'MIL.GH', - 'NET.GH', - 'ORG.GH', + 'exceptions' => [], + 'rules' => [ + 'BIZ.GH', + 'COM.GH', + 'EDU.GH', + 'GOV.GH', + 'MIL.GH', + 'NET.GH', + 'ORG.GH', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GI.php b/data/domain/public-suffix/GI.php index 4b448636..3c2427ed 100644 --- a/data/domain/public-suffix/GI.php +++ b/data/domain/public-suffix/GI.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.GI', - 'EDU.GI', - 'GOV.GI', - 'LTD.GI', - 'MOD.GI', - 'ORG.GI', + 'exceptions' => [], + 'rules' => [ + 'COM.GI', + 'EDU.GI', + 'GOV.GI', + 'LTD.GI', + 'MOD.GI', + 'ORG.GI', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GL.php b/data/domain/public-suffix/GL.php index 7cedee5e..aacd5dfe 100644 --- a/data/domain/public-suffix/GL.php +++ b/data/domain/public-suffix/GL.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.GL', - 'COM.GL', - 'EDU.GL', - 'NET.GL', - 'ORG.GL', + 'exceptions' => [], + 'rules' => [ + 'CO.GL', + 'COM.GL', + 'EDU.GL', + 'NET.GL', + 'ORG.GL', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GLOBAL.php b/data/domain/public-suffix/GLOBAL.php new file mode 100644 index 00000000..b29bd3d2 --- /dev/null +++ b/data/domain/public-suffix/GLOBAL.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'APPWRITE.GLOBAL', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/GN.php b/data/domain/public-suffix/GN.php index 1d6fa11c..b5706e5c 100644 --- a/data/domain/public-suffix/GN.php +++ b/data/domain/public-suffix/GN.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.GN', - 'COM.GN', - 'EDU.GN', - 'GOV.GN', - 'NET.GN', - 'ORG.GN', + 'exceptions' => [], + 'rules' => [ + 'AC.GN', + 'COM.GN', + 'EDU.GN', + 'GOV.GN', + 'NET.GN', + 'ORG.GN', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GOOG.php b/data/domain/public-suffix/GOOG.php new file mode 100644 index 00000000..b84b0507 --- /dev/null +++ b/data/domain/public-suffix/GOOG.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'CLOUD.GOOG', + 'TRANSLATE.GOOG', + ], + 'wildcards' => [ + 'USERCONTENT.GOOG', + ], +]; diff --git a/data/domain/public-suffix/GP.php b/data/domain/public-suffix/GP.php index 56f74ecf..a73c909f 100644 --- a/data/domain/public-suffix/GP.php +++ b/data/domain/public-suffix/GP.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ASSO.GP', - 'COM.GP', - 'EDU.GP', - 'MOBI.GP', - 'NET.GP', - 'ORG.GP', + 'exceptions' => [], + 'rules' => [ + 'ASSO.GP', + 'COM.GP', + 'EDU.GP', + 'MOBI.GP', + 'NET.GP', + 'ORG.GP', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GR.php b/data/domain/public-suffix/GR.php index f3a991ed..11e03225 100644 --- a/data/domain/public-suffix/GR.php +++ b/data/domain/public-suffix/GR.php @@ -2,9 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.GR', - 'EDU.GR', - 'GOV.GR', - 'NET.GR', - 'ORG.GR', + 'exceptions' => [], + 'rules' => [ + 'BARSY.GR', + 'COM.GR', + 'EDU.GR', + 'GOV.GR', + 'NET.GR', + 'ORG.GR', + 'SIMPLESITE.GR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GROUP.php b/data/domain/public-suffix/GROUP.php new file mode 100644 index 00000000..26da7253 --- /dev/null +++ b/data/domain/public-suffix/GROUP.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'DISCOURSE.GROUP', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/GT.php b/data/domain/public-suffix/GT.php index 9100ec24..34884b4f 100644 --- a/data/domain/public-suffix/GT.php +++ b/data/domain/public-suffix/GT.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.GT', - 'EDU.GT', - 'GOB.GT', - 'IND.GT', - 'MIL.GT', - 'NET.GT', - 'ORG.GT', + 'exceptions' => [], + 'rules' => [ + 'COM.GT', + 'EDU.GT', + 'GOB.GT', + 'IND.GT', + 'MIL.GT', + 'NET.GT', + 'ORG.GT', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GU.php b/data/domain/public-suffix/GU.php index 583b94e7..0aa4c622 100644 --- a/data/domain/public-suffix/GU.php +++ b/data/domain/public-suffix/GU.php @@ -2,12 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.GU', - 'EDU.GU', - 'GOV.GU', - 'GUAM.GU', - 'INFO.GU', - 'NET.GU', - 'ORG.GU', - 'WEB.GU', + 'exceptions' => [], + 'rules' => [ + 'COM.GU', + 'EDU.GU', + 'GOV.GU', + 'GUAM.GU', + 'INFO.GU', + 'NET.GU', + 'ORG.GU', + 'WEB.GU', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/GW.php b/data/domain/public-suffix/GW.php new file mode 100644 index 00000000..a5cd7b22 --- /dev/null +++ b/data/domain/public-suffix/GW.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'NX.GW', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/GY.php b/data/domain/public-suffix/GY.php index 2f377368..059ec342 100644 --- a/data/domain/public-suffix/GY.php +++ b/data/domain/public-suffix/GY.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.GY', - 'COM.GY', - 'EDU.GY', - 'GOV.GY', - 'NET.GY', - 'ORG.GY', + 'exceptions' => [], + 'rules' => [ + 'CO.GY', + 'COM.GY', + 'EDU.GY', + 'GOV.GY', + 'NET.GY', + 'ORG.GY', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/HEALTH.php b/data/domain/public-suffix/HEALTH.php new file mode 100644 index 00000000..c237ac6d --- /dev/null +++ b/data/domain/public-suffix/HEALTH.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'HRA.HEALTH', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/HK.php b/data/domain/public-suffix/HK.php index d8f767f0..29dcfaf5 100644 --- a/data/domain/public-suffix/HK.php +++ b/data/domain/public-suffix/HK.php @@ -2,25 +2,31 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.HK', - 'EDU.HK', - 'GOV.HK', - 'IDV.HK', - 'NET.HK', - 'ORG.HK', - '个人.HK', - '個人.HK', - '公司.HK', - '政府.HK', - '敎育.HK', - '教育.HK', - '箇人.HK', - '組織.HK', - '組织.HK', - '網絡.HK', - '網络.HK', - '组織.HK', - '组织.HK', - '网絡.HK', - '网络.HK', + 'exceptions' => [], + 'rules' => [ + 'COM.HK', + 'EDU.HK', + 'GOV.HK', + 'IDV.HK', + 'INC.HK', + 'LTD.HK', + 'NET.HK', + 'ORG.HK', + 'XN--55QX5D.HK', + 'XN--CIQPN.HK', + 'XN--GMQ050I.HK', + 'XN--GMQW5A.HK', + 'XN--IO0A7I.HK', + 'XN--LCVR32D.HK', + 'XN--MK0AXI.HK', + 'XN--MXTQ1M.HK', + 'XN--OD0ALG.HK', + 'XN--OD0AQ3B.HK', + 'XN--TN0AG.HK', + 'XN--UC0ATV.HK', + 'XN--UC0AY4A.HK', + 'XN--WCVS22D.HK', + 'XN--ZF0AVX.HK', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/HN.php b/data/domain/public-suffix/HN.php index f877f5b1..1dccff86 100644 --- a/data/domain/public-suffix/HN.php +++ b/data/domain/public-suffix/HN.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.HN', - 'EDU.HN', - 'GOB.HN', - 'MIL.HN', - 'NET.HN', - 'ORG.HN', + 'exceptions' => [], + 'rules' => [ + 'COM.HN', + 'EDU.HN', + 'GOB.HN', + 'MIL.HN', + 'NET.HN', + 'ORG.HN', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/HOST.php b/data/domain/public-suffix/HOST.php new file mode 100644 index 00000000..b4edc88d --- /dev/null +++ b/data/domain/public-suffix/HOST.php @@ -0,0 +1,24 @@ + [], + 'rules' => [ + 'BOLT.HOST', + 'CLOUDACCESS.HOST', + 'EASYPANEL.HOST', + 'EMERGENT.HOST', + 'FASTVPS.HOST', + 'FREESITE.HOST', + 'GADGET.HOST', + 'HALF.HOST', + 'ISERV.HOST', + 'JELE.HOST', + 'MIRCLOUD.HOST', + 'MYFAST.HOST', + 'TEMPURL.HOST', + 'WP2.HOST', + 'WPMUDEV.HOST', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/HOSTING.php b/data/domain/public-suffix/HOSTING.php new file mode 100644 index 00000000..2eab59d1 --- /dev/null +++ b/data/domain/public-suffix/HOSTING.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'OPENCRAFT.HOSTING', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/HR.php b/data/domain/public-suffix/HR.php index 5a1bf731..84d4dbf2 100644 --- a/data/domain/public-suffix/HR.php +++ b/data/domain/public-suffix/HR.php @@ -2,8 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.HR', - 'FROM.HR', - 'IZ.HR', - 'NAME.HR', + 'exceptions' => [], + 'rules' => [ + 'COM.HR', + 'FROM.HR', + 'IZ.HR', + 'NAME.HR', + 'SHOP.BRENDLY.HR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/HT.php b/data/domain/public-suffix/HT.php index 02382422..bbc1d82f 100644 --- a/data/domain/public-suffix/HT.php +++ b/data/domain/public-suffix/HT.php @@ -2,21 +2,26 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ADULT.HT', - 'ART.HT', - 'ASSO.HT', - 'COM.HT', - 'COOP.HT', - 'EDU.HT', - 'FIRM.HT', - 'GOUV.HT', - 'INFO.HT', - 'MED.HT', - 'NET.HT', - 'ORG.HT', - 'PERSO.HT', - 'POL.HT', - 'PRO.HT', - 'REL.HT', - 'SHOP.HT', + 'exceptions' => [], + 'rules' => [ + 'ADULT.HT', + 'ART.HT', + 'ASSO.HT', + 'COM.HT', + 'COOP.HT', + 'EDU.HT', + 'FIRM.HT', + 'GOUV.HT', + 'INFO.HT', + 'MED.HT', + 'NET.HT', + 'ORG.HT', + 'PERSO.HT', + 'POL.HT', + 'PRO.HT', + 'REL.HT', + 'RT.HT', + 'SHOP.HT', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/HU.php b/data/domain/public-suffix/HU.php index ba45c322..d8cf5725 100644 --- a/data/domain/public-suffix/HU.php +++ b/data/domain/public-suffix/HU.php @@ -2,35 +2,39 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - '2000.HU', - 'AGRAR.HU', - 'BOLT.HU', - 'CASINO.HU', - 'CITY.HU', - 'CO.HU', - 'EROTICA.HU', - 'EROTIKA.HU', - 'FILM.HU', - 'FORUM.HU', - 'GAMES.HU', - 'HOTEL.HU', - 'INFO.HU', - 'INGATLAN.HU', - 'JOGASZ.HU', - 'KONYVELO.HU', - 'LAKAS.HU', - 'MEDIA.HU', - 'NEWS.HU', - 'ORG.HU', - 'PRIV.HU', - 'REKLAM.HU', - 'SEX.HU', - 'SHOP.HU', - 'SPORT.HU', - 'SULI.HU', - 'SZEX.HU', - 'TM.HU', - 'TOZSDE.HU', - 'UTAZAS.HU', - 'VIDEO.HU', + 'exceptions' => [], + 'rules' => [ + '2000.HU', + 'AGRAR.HU', + 'BOLT.HU', + 'CASINO.HU', + 'CITY.HU', + 'CO.HU', + 'EROTICA.HU', + 'EROTIKA.HU', + 'FILM.HU', + 'FORUM.HU', + 'GAMES.HU', + 'HOTEL.HU', + 'INFO.HU', + 'INGATLAN.HU', + 'JOGASZ.HU', + 'KONYVELO.HU', + 'LAKAS.HU', + 'MEDIA.HU', + 'NEWS.HU', + 'ORG.HU', + 'PRIV.HU', + 'REKLAM.HU', + 'SEX.HU', + 'SHOP.HU', + 'SPORT.HU', + 'SULI.HU', + 'SZEX.HU', + 'TM.HU', + 'TOZSDE.HU', + 'UTAZAS.HU', + 'VIDEO.HU', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ID.php b/data/domain/public-suffix/ID.php index 409cb6fb..c1694fb3 100644 --- a/data/domain/public-suffix/ID.php +++ b/data/domain/public-suffix/ID.php @@ -2,18 +2,24 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.ID', - 'BIZ.ID', - 'CO.ID', - 'DESA.ID', - 'GO.ID', - 'KOP.ID', - 'MIL.ID', - 'MY.ID', - 'NET.ID', - 'OR.ID', - 'PONPES.ID', - 'SCH.ID', - 'WEB.ID', - 'ᬩᬮᬶ.ID', + 'exceptions' => [], + 'rules' => [ + 'AC.ID', + 'BIZ.ID', + 'CO.ID', + 'DESA.ID', + 'E.ID', + 'GO.ID', + 'KOP.ID', + 'MIL.ID', + 'MY.ID', + 'NET.ID', + 'OR.ID', + 'PONPES.ID', + 'SCH.ID', + 'WEB.ID', + 'XN--9TFKY.ID', + 'ZONE.ID', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/IE.php b/data/domain/public-suffix/IE.php index b9d1e2c6..0edf3f44 100644 --- a/data/domain/public-suffix/IE.php +++ b/data/domain/public-suffix/IE.php @@ -2,5 +2,10 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.IE', + 'exceptions' => [], + 'rules' => [ + 'GOV.IE', + 'MYSPREADSHOP.IE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/IL.php b/data/domain/public-suffix/IL.php index fdac5087..514aa4da 100644 --- a/data/domain/public-suffix/IL.php +++ b/data/domain/public-suffix/IL.php @@ -2,12 +2,19 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.IL', - 'CO.IL', - 'GOV.IL', - 'IDF.IL', - 'K12.IL', - 'MUNI.IL', - 'NET.IL', - 'ORG.IL', + 'exceptions' => [], + 'rules' => [ + 'AC.IL', + 'CO.IL', + 'GOV.IL', + 'IDF.IL', + 'K12.IL', + 'MUNI.IL', + 'MYTABIT.CO.IL', + 'NET.IL', + 'ORG.IL', + 'RAVPAGE.CO.IL', + 'TABITORDER.CO.IL', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/IM.php b/data/domain/public-suffix/IM.php index a8c09ed8..df5c6240 100644 --- a/data/domain/public-suffix/IM.php +++ b/data/domain/public-suffix/IM.php @@ -2,13 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.IM', - 'CO.IM', - 'LTD.CO.IM', - 'PLC.CO.IM', - 'COM.IM', - 'NET.IM', - 'ORG.IM', - 'TT.IM', - 'TV.IM', + 'exceptions' => [], + 'rules' => [ + 'AC.IM', + 'CO.IM', + 'COM.IM', + 'LTD.CO.IM', + 'NET.IM', + 'ORG.IM', + 'PLC.CO.IM', + 'TT.IM', + 'TV.IM', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/IN.php b/data/domain/public-suffix/IN.php index cd7d99ed..81286205 100644 --- a/data/domain/public-suffix/IN.php +++ b/data/domain/public-suffix/IN.php @@ -2,47 +2,56 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - '5G.IN', - '6G.IN', - 'AC.IN', - 'AI.IN', - 'AM.IN', - 'BANK.IN', - 'BIHAR.IN', - 'BIZ.IN', - 'BUSINESS.IN', - 'CA.IN', - 'CN.IN', - 'CO.IN', - 'COM.IN', - 'COOP.IN', - 'CS.IN', - 'DELHI.IN', - 'DR.IN', - 'EDU.IN', - 'ER.IN', - 'FIN.IN', - 'FIRM.IN', - 'GEN.IN', - 'GOV.IN', - 'GUJARAT.IN', - 'IND.IN', - 'INFO.IN', - 'INT.IN', - 'INTERNET.IN', - 'IO.IN', - 'ME.IN', - 'MIL.IN', - 'NET.IN', - 'NIC.IN', - 'ORG.IN', - 'PG.IN', - 'POST.IN', - 'PRO.IN', - 'RES.IN', - 'TRAVEL.IN', - 'TV.IN', - 'UK.IN', - 'UP.IN', - 'US.IN', + 'exceptions' => [], + 'rules' => [ + '5G.IN', + '6G.IN', + 'AC.IN', + 'AI.IN', + 'AM.IN', + 'BANK.IN', + 'BARSY.IN', + 'BIHAR.IN', + 'BIZ.IN', + 'BUSINESS.IN', + 'CA.IN', + 'CLOUDNS.IN', + 'CN.IN', + 'CO.IN', + 'COM.IN', + 'COOP.IN', + 'CS.IN', + 'DELHI.IN', + 'DR.IN', + 'EDU.IN', + 'ER.IN', + 'FIN.IN', + 'FIRM.IN', + 'GEN.IN', + 'GOV.IN', + 'GUJARAT.IN', + 'IND.IN', + 'INDEVS.IN', + 'INFO.IN', + 'INT.IN', + 'INTERNET.IN', + 'IO.IN', + 'ME.IN', + 'MIL.IN', + 'NET.IN', + 'NIC.IN', + 'ORG.IN', + 'PG.IN', + 'POST.IN', + 'PRO.IN', + 'RES.IN', + 'SUPABASE.IN', + 'TRAVEL.IN', + 'TV.IN', + 'UK.IN', + 'UP.IN', + 'US.IN', + 'WEB.IN', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/INFO.php b/data/domain/public-suffix/INFO.php new file mode 100644 index 00000000..695ba99f --- /dev/null +++ b/data/domain/public-suffix/INFO.php @@ -0,0 +1,33 @@ + [], + 'rules' => [ + 'BARREL-OF-KNOWLEDGE.INFO', + 'BARRELL-OF-KNOWLEDGE.INFO', + 'BARSY.INFO', + 'CLOUDNS.INFO', + 'DNSUPDATE.INFO', + 'DVRCAM.INFO', + 'DYNAMIC-DNS.INFO', + 'DYNDNS.INFO', + 'FOR-OUR.INFO', + 'FORUMZ.INFO', + 'GROKS-THE.INFO', + 'GROKS-THIS.INFO', + 'HERE-FOR-MORE.INFO', + 'ILOVECOLLEGE.INFO', + 'KNOWSITALL.INFO', + 'MAYFIRST.INFO', + 'MITTWALD.INFO', + 'MITTWALDSERVER.INFO', + 'NO-IP.INFO', + 'NSUPDATE.INFO', + 'SELFIP.INFO', + 'TYPO3SERVER.INFO', + 'V-INFO.INFO', + 'WEBHOP.INFO', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/INT.php b/data/domain/public-suffix/INT.php index 61f27dc0..ae7f5613 100644 --- a/data/domain/public-suffix/INT.php +++ b/data/domain/public-suffix/INT.php @@ -2,5 +2,9 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'EU.INT', + 'exceptions' => [], + 'rules' => [ + 'EU.INT', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/IO.php b/data/domain/public-suffix/IO.php index 1f585825..10a8f8e4 100644 --- a/data/domain/public-suffix/IO.php +++ b/data/domain/public-suffix/IO.php @@ -2,12 +2,111 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.IO', - 'COM.IO', - 'EDU.IO', - 'GOV.IO', - 'MIL.IO', - 'NET.IO', - 'NOM.IO', - 'ORG.IO', + 'exceptions' => [], + 'rules' => [ + '2038.IO', + 'AP.NGROK.IO', + 'APIGEE.IO', + 'APPS.LAIR.IO', + 'AU.NGROK.IO', + 'B-DATA.IO', + 'BARSY.IO', + 'BASICSERVER.IO', + 'BEAGLEBOARD.IO', + 'BITBUCKET.IO', + 'BLUEBITE.IO', + 'BOXFUSE.IO', + 'BRAVE.IO', + 'BROWSERSAFETYMARK.IO', + 'BUBBLEAPPS.IO', + 'CDN.BUBBLE.IO', + 'CLEVERAPPS.IO', + 'CLIENT.SCRYPTED.IO', + 'CLOUDBEESUSERCONTENT.IO', + 'CO.IO', + 'COM.IO', + 'CUST.DEV.THINGDUST.IO', + 'CUST.DISREC.THINGDUST.IO', + 'CUST.PROD.THINGDUST.IO', + 'CUST.TESTING.THINGDUST.IO', + 'DARKLANG.IO', + 'DEDYN.IO', + 'DEFINIMA.IO', + 'DEVICES.RESINSTAGING.IO', + 'DRIVE-PLATFORM.IO', + 'DYNDNS.DAPPNODE.IO', + 'EDITORX.IO', + 'EDU.IO', + 'EDUGIT.IO', + 'EU.NGROK.IO', + 'FH-MUENSTER.IO', + 'GITBOOK.IO', + 'GITHUB.IO', + 'GITLAB.IO', + 'GOV.IO', + 'HASURA-APP.IO', + 'HOSTYHOSTING.IO', + 'HYPERNODE.IO', + 'HZC.IO', + 'ICP0.IO', + 'ICP1.IO', + 'ID.FORGEROCK.IO', + 'IN.NGROK.IO', + 'JELE.IO', + 'JP.NGROK.IO', + 'KEENETIC.IO', + 'KILOAPPS.IO', + 'LOGINLINE.IO', + 'LOLIPOP.IO', + 'MIL.IO', + 'MO-SIEMENS.IO', + 'MOCK.PSTMN.IO', + 'MUSICIAN.IO', + 'MYADDR.IO', + 'MYRDBX.IO', + 'NET.IO', + 'NGROK.IO', + 'NOM.IO', + 'ORG.IO', + 'PAAS.BEEBYTE.IO', + 'PANTHEONSITE.IO', + 'PROTONET.IO', + 'PSTMN.IO', + 'QCX.IO', + 'QOTO.IO', + 'QZZ.IO', + 'READTHEDOCS.IO', + 'RESERVD.DEV.THINGDUST.IO', + 'RESERVD.DISREC.THINGDUST.IO', + 'RESERVD.TESTING.THINGDUST.IO', + 'RESINDEVICE.IO', + 'SA.NGROK.IO', + 'SANDCATS.IO', + 'SEKD1.BEEBYTEAPP.IO', + 'SITE.RB-HOSTING.IO', + 'STAGE.NODEART.IO', + 'TELEBIT.IO', + 'TICKETS.IO', + 'UK0.BIGV.IO', + 'US.NGROK.IO', + 'UTWENTE.IO', + 'VAPORCLOUD.IO', + 'VIRTUALSERVER.IO', + 'WEBFLOW.IO', + 'WEBFLOWTEST.IO', + 'WEBTHINGS.IO', + 'WIXSTUDIO.IO', + ], + 'wildcards' => [ + 'AZURECONTAINER.IO', + 'MOONSCALE.IO', + 'ON-ACORN.IO', + 'ON-K3S.IO', + 'ON-RIO.IO', + 'RAW.ICP0.IO', + 'RAW.ICP1.IO', + 'S.BRAVE.IO', + 'STOLOS.IO', + 'SYS.QCX.IO', + ], ]; diff --git a/data/domain/public-suffix/IQ.php b/data/domain/public-suffix/IQ.php index 838eab54..4f9410b3 100644 --- a/data/domain/public-suffix/IQ.php +++ b/data/domain/public-suffix/IQ.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.IQ', - 'EDU.IQ', - 'GOV.IQ', - 'MIL.IQ', - 'NET.IQ', - 'ORG.IQ', + 'exceptions' => [], + 'rules' => [ + 'COM.IQ', + 'EDU.IQ', + 'GOV.IQ', + 'MIL.IQ', + 'NET.IQ', + 'ORG.IQ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/IR.php b/data/domain/public-suffix/IR.php index cf127b7e..a382dc42 100644 --- a/data/domain/public-suffix/IR.php +++ b/data/domain/public-suffix/IR.php @@ -2,13 +2,19 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.IR', - 'CO.IR', - 'GOV.IR', - 'ID.IR', - 'NET.IR', - 'ORG.IR', - 'SCH.IR', - 'ایران.IR', - 'ايران.IR', + 'exceptions' => [], + 'rules' => [ + 'AC.IR', + 'ARVANEDGE.IR', + 'CO.IR', + 'GOV.IR', + 'ID.IR', + 'NET.IR', + 'ORG.IR', + 'SCH.IR', + 'VISTABLOG.IR', + 'XN--MGBA3A4F16A.IR', + 'XN--MGBA3A4FRA.IR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/IT.php b/data/domain/public-suffix/IT.php index 0119a476..5c7df97c 100644 --- a/data/domain/public-suffix/IT.php +++ b/data/domain/public-suffix/IT.php @@ -2,410 +2,423 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'EDU.IT', - 'GOV.IT', - 'ABR.IT', - 'ABRUZZO.IT', - 'AOSTA-VALLEY.IT', - 'AOSTAVALLEY.IT', - 'BAS.IT', - 'BASILICATA.IT', - 'CAL.IT', - 'CALABRIA.IT', - 'CAM.IT', - 'CAMPANIA.IT', - 'EMILIA-ROMAGNA.IT', - 'EMILIAROMAGNA.IT', - 'EMR.IT', - 'FRIULI-V-GIULIA.IT', - 'FRIULI-VE-GIULIA.IT', - 'FRIULI-VEGIULIA.IT', - 'FRIULI-VENEZIA-GIULIA.IT', - 'FRIULI-VENEZIAGIULIA.IT', - 'FRIULI-VGIULIA.IT', - 'FRIULIV-GIULIA.IT', - 'FRIULIVE-GIULIA.IT', - 'FRIULIVEGIULIA.IT', - 'FRIULIVENEZIA-GIULIA.IT', - 'FRIULIVENEZIAGIULIA.IT', - 'FRIULIVGIULIA.IT', - 'FVG.IT', - 'LAZ.IT', - 'LAZIO.IT', - 'LIG.IT', - 'LIGURIA.IT', - 'LOM.IT', - 'LOMBARDIA.IT', - 'LOMBARDY.IT', - 'LUCANIA.IT', - 'MAR.IT', - 'MARCHE.IT', - 'MOL.IT', - 'MOLISE.IT', - 'PIEDMONT.IT', - 'PIEMONTE.IT', - 'PMN.IT', - 'PUG.IT', - 'PUGLIA.IT', - 'SAR.IT', - 'SARDEGNA.IT', - 'SARDINIA.IT', - 'SIC.IT', - 'SICILIA.IT', - 'SICILY.IT', - 'TAA.IT', - 'TOS.IT', - 'TOSCANA.IT', - 'TRENTIN-SUD-TIROL.IT', - 'TRENTIN-SÜD-TIROL.IT', - 'TRENTIN-SUDTIROL.IT', - 'TRENTIN-SÜDTIROL.IT', - 'TRENTIN-SUED-TIROL.IT', - 'TRENTIN-SUEDTIROL.IT', - 'TRENTINO.IT', - 'TRENTINO-A-ADIGE.IT', - 'TRENTINO-AADIGE.IT', - 'TRENTINO-ALTO-ADIGE.IT', - 'TRENTINO-ALTOADIGE.IT', - 'TRENTINO-S-TIROL.IT', - 'TRENTINO-STIROL.IT', - 'TRENTINO-SUD-TIROL.IT', - 'TRENTINO-SÜD-TIROL.IT', - 'TRENTINO-SUDTIROL.IT', - 'TRENTINO-SÜDTIROL.IT', - 'TRENTINO-SUED-TIROL.IT', - 'TRENTINO-SUEDTIROL.IT', - 'TRENTINOA-ADIGE.IT', - 'TRENTINOAADIGE.IT', - 'TRENTINOALTO-ADIGE.IT', - 'TRENTINOALTOADIGE.IT', - 'TRENTINOS-TIROL.IT', - 'TRENTINOSTIROL.IT', - 'TRENTINOSUD-TIROL.IT', - 'TRENTINOSÜD-TIROL.IT', - 'TRENTINOSUDTIROL.IT', - 'TRENTINOSÜDTIROL.IT', - 'TRENTINOSUED-TIROL.IT', - 'TRENTINOSUEDTIROL.IT', - 'TRENTINSUD-TIROL.IT', - 'TRENTINSÜD-TIROL.IT', - 'TRENTINSUDTIROL.IT', - 'TRENTINSÜDTIROL.IT', - 'TRENTINSUED-TIROL.IT', - 'TRENTINSUEDTIROL.IT', - 'TUSCANY.IT', - 'UMB.IT', - 'UMBRIA.IT', - 'VAL-D-AOSTA.IT', - 'VAL-DAOSTA.IT', - 'VALD-AOSTA.IT', - 'VALDAOSTA.IT', - 'VALLE-AOSTA.IT', - 'VALLE-D-AOSTA.IT', - 'VALLE-DAOSTA.IT', - 'VALLEAOSTA.IT', - 'VALLED-AOSTA.IT', - 'VALLEDAOSTA.IT', - 'VALLEE-AOSTE.IT', - 'VALLÉE-AOSTE.IT', - 'VALLEE-D-AOSTE.IT', - 'VALLÉE-D-AOSTE.IT', - 'VALLEEAOSTE.IT', - 'VALLÉEAOSTE.IT', - 'VALLEEDAOSTE.IT', - 'VALLÉEDAOSTE.IT', - 'VAO.IT', - 'VDA.IT', - 'VEN.IT', - 'VENETO.IT', - 'AG.IT', - 'AGRIGENTO.IT', - 'AL.IT', - 'ALESSANDRIA.IT', - 'ALTO-ADIGE.IT', - 'ALTOADIGE.IT', - 'AN.IT', - 'ANCONA.IT', - 'ANDRIA-BARLETTA-TRANI.IT', - 'ANDRIA-TRANI-BARLETTA.IT', - 'ANDRIABARLETTATRANI.IT', - 'ANDRIATRANIBARLETTA.IT', - 'AO.IT', - 'AOSTA.IT', - 'AOSTE.IT', - 'AP.IT', - 'AQ.IT', - 'AQUILA.IT', - 'AR.IT', - 'AREZZO.IT', - 'ASCOLI-PICENO.IT', - 'ASCOLIPICENO.IT', - 'ASTI.IT', - 'AT.IT', - 'AV.IT', - 'AVELLINO.IT', - 'BA.IT', - 'BALSAN.IT', - 'BALSAN-SUDTIROL.IT', - 'BALSAN-SÜDTIROL.IT', - 'BALSAN-SUEDTIROL.IT', - 'BARI.IT', - 'BARLETTA-TRANI-ANDRIA.IT', - 'BARLETTATRANIANDRIA.IT', - 'BELLUNO.IT', - 'BENEVENTO.IT', - 'BERGAMO.IT', - 'BG.IT', - 'BI.IT', - 'BIELLA.IT', - 'BL.IT', - 'BN.IT', - 'BO.IT', - 'BOLOGNA.IT', - 'BOLZANO.IT', - 'BOLZANO-ALTOADIGE.IT', - 'BOZEN.IT', - 'BOZEN-SUDTIROL.IT', - 'BOZEN-SÜDTIROL.IT', - 'BOZEN-SUEDTIROL.IT', - 'BR.IT', - 'BRESCIA.IT', - 'BRINDISI.IT', - 'BS.IT', - 'BT.IT', - 'BULSAN.IT', - 'BULSAN-SUDTIROL.IT', - 'BULSAN-SÜDTIROL.IT', - 'BULSAN-SUEDTIROL.IT', - 'BZ.IT', - 'CA.IT', - 'CAGLIARI.IT', - 'CALTANISSETTA.IT', - 'CAMPIDANO-MEDIO.IT', - 'CAMPIDANOMEDIO.IT', - 'CAMPOBASSO.IT', - 'CARBONIA-IGLESIAS.IT', - 'CARBONIAIGLESIAS.IT', - 'CARRARA-MASSA.IT', - 'CARRARAMASSA.IT', - 'CASERTA.IT', - 'CATANIA.IT', - 'CATANZARO.IT', - 'CB.IT', - 'CE.IT', - 'CESENA-FORLI.IT', - 'CESENA-FORLÌ.IT', - 'CESENAFORLI.IT', - 'CESENAFORLÌ.IT', - 'CH.IT', - 'CHIETI.IT', - 'CI.IT', - 'CL.IT', - 'CN.IT', - 'CO.IT', - 'COMO.IT', - 'COSENZA.IT', - 'CR.IT', - 'CREMONA.IT', - 'CROTONE.IT', - 'CS.IT', - 'CT.IT', - 'CUNEO.IT', - 'CZ.IT', - 'DELL-OGLIASTRA.IT', - 'DELLOGLIASTRA.IT', - 'EN.IT', - 'ENNA.IT', - 'FC.IT', - 'FE.IT', - 'FERMO.IT', - 'FERRARA.IT', - 'FG.IT', - 'FI.IT', - 'FIRENZE.IT', - 'FLORENCE.IT', - 'FM.IT', - 'FOGGIA.IT', - 'FORLI-CESENA.IT', - 'FORLÌ-CESENA.IT', - 'FORLICESENA.IT', - 'FORLÌCESENA.IT', - 'FR.IT', - 'FROSINONE.IT', - 'GE.IT', - 'GENOA.IT', - 'GENOVA.IT', - 'GO.IT', - 'GORIZIA.IT', - 'GR.IT', - 'GROSSETO.IT', - 'IGLESIAS-CARBONIA.IT', - 'IGLESIASCARBONIA.IT', - 'IM.IT', - 'IMPERIA.IT', - 'IS.IT', - 'ISERNIA.IT', - 'KR.IT', - 'LA-SPEZIA.IT', - 'LAQUILA.IT', - 'LASPEZIA.IT', - 'LATINA.IT', - 'LC.IT', - 'LE.IT', - 'LECCE.IT', - 'LECCO.IT', - 'LI.IT', - 'LIVORNO.IT', - 'LO.IT', - 'LODI.IT', - 'LT.IT', - 'LU.IT', - 'LUCCA.IT', - 'MACERATA.IT', - 'MANTOVA.IT', - 'MASSA-CARRARA.IT', - 'MASSACARRARA.IT', - 'MATERA.IT', - 'MB.IT', - 'MC.IT', - 'ME.IT', - 'MEDIO-CAMPIDANO.IT', - 'MEDIOCAMPIDANO.IT', - 'MESSINA.IT', - 'MI.IT', - 'MILAN.IT', - 'MILANO.IT', - 'MN.IT', - 'MO.IT', - 'MODENA.IT', - 'MONZA.IT', - 'MONZA-BRIANZA.IT', - 'MONZA-E-DELLA-BRIANZA.IT', - 'MONZABRIANZA.IT', - 'MONZAEBRIANZA.IT', - 'MONZAEDELLABRIANZA.IT', - 'MS.IT', - 'MT.IT', - 'NA.IT', - 'NAPLES.IT', - 'NAPOLI.IT', - 'NO.IT', - 'NOVARA.IT', - 'NU.IT', - 'NUORO.IT', - 'OG.IT', - 'OGLIASTRA.IT', - 'OLBIA-TEMPIO.IT', - 'OLBIATEMPIO.IT', - 'OR.IT', - 'ORISTANO.IT', - 'OT.IT', - 'PA.IT', - 'PADOVA.IT', - 'PADUA.IT', - 'PALERMO.IT', - 'PARMA.IT', - 'PAVIA.IT', - 'PC.IT', - 'PD.IT', - 'PE.IT', - 'PERUGIA.IT', - 'PESARO-URBINO.IT', - 'PESAROURBINO.IT', - 'PESCARA.IT', - 'PG.IT', - 'PI.IT', - 'PIACENZA.IT', - 'PISA.IT', - 'PISTOIA.IT', - 'PN.IT', - 'PO.IT', - 'PORDENONE.IT', - 'POTENZA.IT', - 'PR.IT', - 'PRATO.IT', - 'PT.IT', - 'PU.IT', - 'PV.IT', - 'PZ.IT', - 'RA.IT', - 'RAGUSA.IT', - 'RAVENNA.IT', - 'RC.IT', - 'RE.IT', - 'REGGIO-CALABRIA.IT', - 'REGGIO-EMILIA.IT', - 'REGGIOCALABRIA.IT', - 'REGGIOEMILIA.IT', - 'RG.IT', - 'RI.IT', - 'RIETI.IT', - 'RIMINI.IT', - 'RM.IT', - 'RN.IT', - 'RO.IT', - 'ROMA.IT', - 'ROME.IT', - 'ROVIGO.IT', - 'SA.IT', - 'SALERNO.IT', - 'SASSARI.IT', - 'SAVONA.IT', - 'SI.IT', - 'SIENA.IT', - 'SIRACUSA.IT', - 'SO.IT', - 'SONDRIO.IT', - 'SP.IT', - 'SR.IT', - 'SS.IT', - 'SÜDTIROL.IT', - 'SUEDTIROL.IT', - 'SV.IT', - 'TA.IT', - 'TARANTO.IT', - 'TE.IT', - 'TEMPIO-OLBIA.IT', - 'TEMPIOOLBIA.IT', - 'TERAMO.IT', - 'TERNI.IT', - 'TN.IT', - 'TO.IT', - 'TORINO.IT', - 'TP.IT', - 'TR.IT', - 'TRANI-ANDRIA-BARLETTA.IT', - 'TRANI-BARLETTA-ANDRIA.IT', - 'TRANIANDRIABARLETTA.IT', - 'TRANIBARLETTAANDRIA.IT', - 'TRAPANI.IT', - 'TRENTO.IT', - 'TREVISO.IT', - 'TRIESTE.IT', - 'TS.IT', - 'TURIN.IT', - 'TV.IT', - 'UD.IT', - 'UDINE.IT', - 'URBINO-PESARO.IT', - 'URBINOPESARO.IT', - 'VA.IT', - 'VARESE.IT', - 'VB.IT', - 'VC.IT', - 'VE.IT', - 'VENEZIA.IT', - 'VENICE.IT', - 'VERBANIA.IT', - 'VERCELLI.IT', - 'VERONA.IT', - 'VI.IT', - 'VIBO-VALENTIA.IT', - 'VIBOVALENTIA.IT', - 'VICENZA.IT', - 'VITERBO.IT', - 'VR.IT', - 'VS.IT', - 'VT.IT', - 'VV.IT', + 'exceptions' => [], + 'rules' => [ + '123HOMEPAGE.IT', + '16-B.IT', + '32-B.IT', + '64-B.IT', + 'ABR.IT', + 'ABRUZZO.IT', + 'AG.IT', + 'AGRIGENTO.IT', + 'AL.IT', + 'ALESSANDRIA.IT', + 'ALTO-ADIGE.IT', + 'ALTOADIGE.IT', + 'AN.IT', + 'ANCONA.IT', + 'ANDRIA-BARLETTA-TRANI.IT', + 'ANDRIA-TRANI-BARLETTA.IT', + 'ANDRIABARLETTATRANI.IT', + 'ANDRIATRANIBARLETTA.IT', + 'AO.IT', + 'AOSTA-VALLEY.IT', + 'AOSTA.IT', + 'AOSTAVALLEY.IT', + 'AOSTE.IT', + 'AP.IT', + 'AQ.IT', + 'AQUILA.IT', + 'AR.IT', + 'AREZZO.IT', + 'ASCOLI-PICENO.IT', + 'ASCOLIPICENO.IT', + 'ASTI.IT', + 'AT.IT', + 'AV.IT', + 'AVELLINO.IT', + 'BA.IT', + 'BALSAN-SUDTIROL.IT', + 'BALSAN-SUEDTIROL.IT', + 'BALSAN.IT', + 'BARI.IT', + 'BARLETTA-TRANI-ANDRIA.IT', + 'BARLETTATRANIANDRIA.IT', + 'BAS.IT', + 'BASILICATA.IT', + 'BELLUNO.IT', + 'BENEVENTO.IT', + 'BERGAMO.IT', + 'BG.IT', + 'BI.IT', + 'BIELLA.IT', + 'BL.IT', + 'BN.IT', + 'BO.IT', + 'BOLOGNA.IT', + 'BOLZANO-ALTOADIGE.IT', + 'BOLZANO.IT', + 'BOZEN-SUDTIROL.IT', + 'BOZEN-SUEDTIROL.IT', + 'BOZEN.IT', + 'BR.IT', + 'BRESCIA.IT', + 'BRINDISI.IT', + 'BS.IT', + 'BT.IT', + 'BULSAN-SUDTIROL.IT', + 'BULSAN-SUEDTIROL.IT', + 'BULSAN.IT', + 'BZ.IT', + 'CA.IT', + 'CAGLIARI.IT', + 'CAL.IT', + 'CALABRIA.IT', + 'CALTANISSETTA.IT', + 'CAM.IT', + 'CAMPANIA.IT', + 'CAMPIDANO-MEDIO.IT', + 'CAMPIDANOMEDIO.IT', + 'CAMPOBASSO.IT', + 'CARBONIA-IGLESIAS.IT', + 'CARBONIAIGLESIAS.IT', + 'CARRARA-MASSA.IT', + 'CARRARAMASSA.IT', + 'CASERTA.IT', + 'CATANIA.IT', + 'CATANZARO.IT', + 'CB.IT', + 'CE.IT', + 'CESENA-FORLI.IT', + 'CESENAFORLI.IT', + 'CH.IT', + 'CHIETI.IT', + 'CI.IT', + 'CL.IT', + 'CN.IT', + 'CO.IT', + 'COMO.IT', + 'COSENZA.IT', + 'CR.IT', + 'CREMONA.IT', + 'CROTONE.IT', + 'CS.IT', + 'CT.IT', + 'CUNEO.IT', + 'CZ.IT', + 'DELL-OGLIASTRA.IT', + 'DELLOGLIASTRA.IT', + 'EDU.IT', + 'EMILIA-ROMAGNA.IT', + 'EMILIAROMAGNA.IT', + 'EMR.IT', + 'EN.IT', + 'ENNA.IT', + 'FC.IT', + 'FE.IT', + 'FERMO.IT', + 'FERRARA.IT', + 'FG.IT', + 'FI.IT', + 'FIRENZE.IT', + 'FLORENCE.IT', + 'FM.IT', + 'FOGGIA.IT', + 'FORLI-CESENA.IT', + 'FORLICESENA.IT', + 'FR.IT', + 'FRIULI-V-GIULIA.IT', + 'FRIULI-VE-GIULIA.IT', + 'FRIULI-VEGIULIA.IT', + 'FRIULI-VENEZIA-GIULIA.IT', + 'FRIULI-VENEZIAGIULIA.IT', + 'FRIULI-VGIULIA.IT', + 'FRIULIV-GIULIA.IT', + 'FRIULIVE-GIULIA.IT', + 'FRIULIVEGIULIA.IT', + 'FRIULIVENEZIA-GIULIA.IT', + 'FRIULIVENEZIAGIULIA.IT', + 'FRIULIVGIULIA.IT', + 'FROSINONE.IT', + 'FVG.IT', + 'GE.IT', + 'GENOA.IT', + 'GENOVA.IT', + 'GO.IT', + 'GORIZIA.IT', + 'GOV.IT', + 'GR.IT', + 'GROSSETO.IT', + 'IBXOS.IT', + 'IGLESIAS-CARBONIA.IT', + 'IGLESIASCARBONIA.IT', + 'ILIADBOXOS.IT', + 'IM.IT', + 'IMPERIA.IT', + 'IS.IT', + 'ISERNIA.IT', + 'JC.NEEN.IT', + 'KR.IT', + 'LA-SPEZIA.IT', + 'LAQUILA.IT', + 'LASPEZIA.IT', + 'LATINA.IT', + 'LAZ.IT', + 'LAZIO.IT', + 'LC.IT', + 'LE.IT', + 'LECCE.IT', + 'LECCO.IT', + 'LI.IT', + 'LIG.IT', + 'LIGURIA.IT', + 'LIVORNO.IT', + 'LO.IT', + 'LODI.IT', + 'LOM.IT', + 'LOMBARDIA.IT', + 'LOMBARDY.IT', + 'LT.IT', + 'LU.IT', + 'LUCANIA.IT', + 'LUCCA.IT', + 'MACERATA.IT', + 'MANTOVA.IT', + 'MAR.IT', + 'MARCHE.IT', + 'MASSA-CARRARA.IT', + 'MASSACARRARA.IT', + 'MATERA.IT', + 'MB.IT', + 'MC.IT', + 'ME.IT', + 'MEDIO-CAMPIDANO.IT', + 'MEDIOCAMPIDANO.IT', + 'MESSINA.IT', + 'MI.IT', + 'MILAN.IT', + 'MILANO.IT', + 'MN.IT', + 'MO.IT', + 'MODENA.IT', + 'MOL.IT', + 'MOLISE.IT', + 'MONZA-BRIANZA.IT', + 'MONZA-E-DELLA-BRIANZA.IT', + 'MONZA.IT', + 'MONZABRIANZA.IT', + 'MONZAEBRIANZA.IT', + 'MONZAEDELLABRIANZA.IT', + 'MS.IT', + 'MT.IT', + 'MYSPREADSHOP.IT', + 'NA.IT', + 'NAPLES.IT', + 'NAPOLI.IT', + 'NO.IT', + 'NOVARA.IT', + 'NU.IT', + 'NUORO.IT', + 'OG.IT', + 'OGLIASTRA.IT', + 'OLBIA-TEMPIO.IT', + 'OLBIATEMPIO.IT', + 'OR.IT', + 'ORISTANO.IT', + 'OT.IT', + 'PA.IT', + 'PADOVA.IT', + 'PADUA.IT', + 'PALERMO.IT', + 'PARMA.IT', + 'PAVIA.IT', + 'PC.IT', + 'PD.IT', + 'PE.IT', + 'PERUGIA.IT', + 'PESARO-URBINO.IT', + 'PESAROURBINO.IT', + 'PESCARA.IT', + 'PG.IT', + 'PI.IT', + 'PIACENZA.IT', + 'PIEDMONT.IT', + 'PIEMONTE.IT', + 'PISA.IT', + 'PISTOIA.IT', + 'PMN.IT', + 'PN.IT', + 'PO.IT', + 'PORDENONE.IT', + 'POTENZA.IT', + 'PR.IT', + 'PRATO.IT', + 'PT.IT', + 'PU.IT', + 'PUG.IT', + 'PUGLIA.IT', + 'PV.IT', + 'PZ.IT', + 'RA.IT', + 'RAGUSA.IT', + 'RAVENNA.IT', + 'RC.IT', + 'RE.IT', + 'REGGIO-CALABRIA.IT', + 'REGGIO-EMILIA.IT', + 'REGGIOCALABRIA.IT', + 'REGGIOEMILIA.IT', + 'RG.IT', + 'RI.IT', + 'RIETI.IT', + 'RIMINI.IT', + 'RM.IT', + 'RN.IT', + 'RO.IT', + 'ROMA.IT', + 'ROME.IT', + 'ROVIGO.IT', + 'SA.IT', + 'SALERNO.IT', + 'SAR.IT', + 'SARDEGNA.IT', + 'SARDINIA.IT', + 'SASSARI.IT', + 'SAVONA.IT', + 'SI.IT', + 'SIC.IT', + 'SICILIA.IT', + 'SICILY.IT', + 'SIENA.IT', + 'SIRACUSA.IT', + 'SO.IT', + 'SONDRIO.IT', + 'SP.IT', + 'SR.IT', + 'SS.IT', + 'SUEDTIROL.IT', + 'SV.IT', + 'SYNCLOUD.IT', + 'TA.IT', + 'TAA.IT', + 'TARANTO.IT', + 'TE.IT', + 'TEMPIO-OLBIA.IT', + 'TEMPIOOLBIA.IT', + 'TERAMO.IT', + 'TERNI.IT', + 'TN.IT', + 'TO.IT', + 'TORINO.IT', + 'TOS.IT', + 'TOSCANA.IT', + 'TP.IT', + 'TR.IT', + 'TRANI-ANDRIA-BARLETTA.IT', + 'TRANI-BARLETTA-ANDRIA.IT', + 'TRANIANDRIABARLETTA.IT', + 'TRANIBARLETTAANDRIA.IT', + 'TRAPANI.IT', + 'TRENTIN-SUD-TIROL.IT', + 'TRENTIN-SUDTIROL.IT', + 'TRENTIN-SUED-TIROL.IT', + 'TRENTIN-SUEDTIROL.IT', + 'TRENTINO-A-ADIGE.IT', + 'TRENTINO-AADIGE.IT', + 'TRENTINO-ALTO-ADIGE.IT', + 'TRENTINO-ALTOADIGE.IT', + 'TRENTINO-S-TIROL.IT', + 'TRENTINO-STIROL.IT', + 'TRENTINO-SUD-TIROL.IT', + 'TRENTINO-SUDTIROL.IT', + 'TRENTINO-SUED-TIROL.IT', + 'TRENTINO-SUEDTIROL.IT', + 'TRENTINO.IT', + 'TRENTINOA-ADIGE.IT', + 'TRENTINOAADIGE.IT', + 'TRENTINOALTO-ADIGE.IT', + 'TRENTINOALTOADIGE.IT', + 'TRENTINOS-TIROL.IT', + 'TRENTINOSTIROL.IT', + 'TRENTINOSUD-TIROL.IT', + 'TRENTINOSUDTIROL.IT', + 'TRENTINOSUED-TIROL.IT', + 'TRENTINOSUEDTIROL.IT', + 'TRENTINSUD-TIROL.IT', + 'TRENTINSUDTIROL.IT', + 'TRENTINSUED-TIROL.IT', + 'TRENTINSUEDTIROL.IT', + 'TRENTO.IT', + 'TREVISO.IT', + 'TRIESTE.IT', + 'TS.IT', + 'TURIN.IT', + 'TUSCANY.IT', + 'TV.IT', + 'UD.IT', + 'UDINE.IT', + 'UMB.IT', + 'UMBRIA.IT', + 'URBINO-PESARO.IT', + 'URBINOPESARO.IT', + 'VA.IT', + 'VAL-D-AOSTA.IT', + 'VAL-DAOSTA.IT', + 'VALD-AOSTA.IT', + 'VALDAOSTA.IT', + 'VALLE-AOSTA.IT', + 'VALLE-D-AOSTA.IT', + 'VALLE-DAOSTA.IT', + 'VALLEAOSTA.IT', + 'VALLED-AOSTA.IT', + 'VALLEDAOSTA.IT', + 'VALLEE-AOSTE.IT', + 'VALLEE-D-AOSTE.IT', + 'VALLEEAOSTE.IT', + 'VALLEEDAOSTE.IT', + 'VAO.IT', + 'VARESE.IT', + 'VB.IT', + 'VC.IT', + 'VDA.IT', + 'VE.IT', + 'VEN.IT', + 'VENETO.IT', + 'VENEZIA.IT', + 'VENICE.IT', + 'VERBANIA.IT', + 'VERCELLI.IT', + 'VERONA.IT', + 'VI.IT', + 'VIBO-VALENTIA.IT', + 'VIBOVALENTIA.IT', + 'VICENZA.IT', + 'VITERBO.IT', + 'VR.IT', + 'VS.IT', + 'VT.IT', + 'VV.IT', + 'XN--BALSAN-SDTIROL-NSB.IT', + 'XN--BOZEN-SDTIROL-2OB.IT', + 'XN--BULSAN-SDTIROL-NSB.IT', + 'XN--CESENA-FORL-MCB.IT', + 'XN--CESENAFORL-I8A.IT', + 'XN--FORL-CESENA-FCB.IT', + 'XN--FORLCESENA-C8A.IT', + 'XN--SDTIROL-N2A.IT', + 'XN--TRENTIN-SD-TIROL-RZB.IT', + 'XN--TRENTIN-SDTIROL-7VB.IT', + 'XN--TRENTINO-SD-TIROL-C3B.IT', + 'XN--TRENTINO-SDTIROL-SZB.IT', + 'XN--TRENTINOSD-TIROL-RZB.IT', + 'XN--TRENTINOSDTIROL-7VB.IT', + 'XN--TRENTINSD-TIROL-6VB.IT', + 'XN--TRENTINSDTIROL-NSB.IT', + 'XN--VALLE-AOSTE-EBB.IT', + 'XN--VALLE-D-AOSTE-EHB.IT', + 'XN--VALLEAOSTE-E7A.IT', + 'XN--VALLEDAOSTE-EBB.IT', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/JE.php b/data/domain/public-suffix/JE.php index 8cb87fdb..6ca96b5b 100644 --- a/data/domain/public-suffix/JE.php +++ b/data/domain/public-suffix/JE.php @@ -2,7 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.JE', - 'NET.JE', - 'ORG.JE', + 'exceptions' => [], + 'rules' => [ + 'CO.JE', + 'NET.JE', + 'OF.JE', + 'ORG.JE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/JM.php b/data/domain/public-suffix/JM.php new file mode 100644 index 00000000..92e4fcc2 --- /dev/null +++ b/data/domain/public-suffix/JM.php @@ -0,0 +1,10 @@ + [], + 'rules' => [], + 'wildcards' => [ + 'JM', + ], +]; diff --git a/data/domain/public-suffix/JO.php b/data/domain/public-suffix/JO.php index f6bb760f..e30f59a1 100644 --- a/data/domain/public-suffix/JO.php +++ b/data/domain/public-suffix/JO.php @@ -2,18 +2,22 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AGRI.JO', - 'AI.JO', - 'COM.JO', - 'EDU.JO', - 'ENG.JO', - 'FM.JO', - 'GOV.JO', - 'MIL.JO', - 'NET.JO', - 'ORG.JO', - 'PER.JO', - 'PHD.JO', - 'SCH.JO', - 'TV.JO', + 'exceptions' => [], + 'rules' => [ + 'AGRI.JO', + 'AI.JO', + 'COM.JO', + 'EDU.JO', + 'ENG.JO', + 'FM.JO', + 'GOV.JO', + 'MIL.JO', + 'NET.JO', + 'ORG.JO', + 'PER.JO', + 'PHD.JO', + 'SCH.JO', + 'TV.JO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/JP.php b/data/domain/public-suffix/JP.php index a886ff99..27813c62 100644 --- a/data/domain/public-suffix/JP.php +++ b/data/domain/public-suffix/JP.php @@ -2,1794 +2,1960 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.JP', - 'AD.JP', - 'CO.JP', - 'ED.JP', - 'GO.JP', - 'GR.JP', - 'LG.JP', - 'NE.JP', - 'OR.JP', - 'AICHI.JP', - 'AKITA.JP', - 'AOMORI.JP', - 'CHIBA.JP', - 'EHIME.JP', - 'FUKUI.JP', - 'FUKUOKA.JP', - 'FUKUSHIMA.JP', - 'GIFU.JP', - 'GUNMA.JP', - 'HIROSHIMA.JP', - 'HOKKAIDO.JP', - 'HYOGO.JP', - 'IBARAKI.JP', - 'ISHIKAWA.JP', - 'IWATE.JP', - 'KAGAWA.JP', - 'KAGOSHIMA.JP', - 'KANAGAWA.JP', - 'KOCHI.JP', - 'KUMAMOTO.JP', - 'KYOTO.JP', - 'MIE.JP', - 'MIYAGI.JP', - 'MIYAZAKI.JP', - 'NAGANO.JP', - 'NAGASAKI.JP', - 'NARA.JP', - 'NIIGATA.JP', - 'OITA.JP', - 'OKAYAMA.JP', - 'OKINAWA.JP', - 'OSAKA.JP', - 'SAGA.JP', - 'SAITAMA.JP', - 'SHIGA.JP', - 'SHIMANE.JP', - 'SHIZUOKA.JP', - 'TOCHIGI.JP', - 'TOKUSHIMA.JP', - 'TOKYO.JP', - 'TOTTORI.JP', - 'TOYAMA.JP', - 'WAKAYAMA.JP', - 'YAMAGATA.JP', - 'YAMAGUCHI.JP', - 'YAMANASHI.JP', - '三重.JP', - '京都.JP', - '佐賀.JP', - '兵庫.JP', - '北海道.JP', - '千葉.JP', - '和歌山.JP', - '埼玉.JP', - '大分.JP', - '大阪.JP', - '奈良.JP', - '宮城.JP', - '宮崎.JP', - '富山.JP', - '山口.JP', - '山形.JP', - '山梨.JP', - '岐阜.JP', - '岡山.JP', - '岩手.JP', - '島根.JP', - '広島.JP', - '徳島.JP', - '愛媛.JP', - '愛知.JP', - '新潟.JP', - '東京.JP', - '栃木.JP', - '沖縄.JP', - '滋賀.JP', - '熊本.JP', - '石川.JP', - '神奈川.JP', - '福井.JP', - '福岡.JP', - '福島.JP', - '秋田.JP', - '群馬.JP', - '茨城.JP', - '長崎.JP', - '長野.JP', - '青森.JP', - '静岡.JP', - '香川.JP', - '高知.JP', - '鳥取.JP', - '鹿児島.JP', - 'KAWASAKI.JP', - 'CITY.KAWASAKI.JP', - 'KITAKYUSHU.JP', - 'CITY.KITAKYUSHU.JP', - 'KOBE.JP', - 'CITY.KOBE.JP', - 'NAGOYA.JP', - 'CITY.NAGOYA.JP', - 'SAPPORO.JP', - 'CITY.SAPPORO.JP', - 'SENDAI.JP', - 'CITY.SENDAI.JP', - 'YOKOHAMA.JP', - 'CITY.YOKOHAMA.JP', - 'AISAI.AICHI.JP', - 'AMA.AICHI.JP', - 'ANJO.AICHI.JP', - 'ASUKE.AICHI.JP', - 'CHIRYU.AICHI.JP', - 'CHITA.AICHI.JP', - 'FUSO.AICHI.JP', - 'GAMAGORI.AICHI.JP', - 'HANDA.AICHI.JP', - 'HAZU.AICHI.JP', - 'HEKINAN.AICHI.JP', - 'HIGASHIURA.AICHI.JP', - 'ICHINOMIYA.AICHI.JP', - 'INAZAWA.AICHI.JP', - 'INUYAMA.AICHI.JP', - 'ISSHIKI.AICHI.JP', - 'IWAKURA.AICHI.JP', - 'KANIE.AICHI.JP', - 'KARIYA.AICHI.JP', - 'KASUGAI.AICHI.JP', - 'KIRA.AICHI.JP', - 'KIYOSU.AICHI.JP', - 'KOMAKI.AICHI.JP', - 'KONAN.AICHI.JP', - 'KOTA.AICHI.JP', - 'MIHAMA.AICHI.JP', - 'MIYOSHI.AICHI.JP', - 'NISHIO.AICHI.JP', - 'NISSHIN.AICHI.JP', - 'OBU.AICHI.JP', - 'OGUCHI.AICHI.JP', - 'OHARU.AICHI.JP', - 'OKAZAKI.AICHI.JP', - 'OWARIASAHI.AICHI.JP', - 'SETO.AICHI.JP', - 'SHIKATSU.AICHI.JP', - 'SHINSHIRO.AICHI.JP', - 'SHITARA.AICHI.JP', - 'TAHARA.AICHI.JP', - 'TAKAHAMA.AICHI.JP', - 'TOBISHIMA.AICHI.JP', - 'TOEI.AICHI.JP', - 'TOGO.AICHI.JP', - 'TOKAI.AICHI.JP', - 'TOKONAME.AICHI.JP', - 'TOYOAKE.AICHI.JP', - 'TOYOHASHI.AICHI.JP', - 'TOYOKAWA.AICHI.JP', - 'TOYONE.AICHI.JP', - 'TOYOTA.AICHI.JP', - 'TSUSHIMA.AICHI.JP', - 'YATOMI.AICHI.JP', - 'AKITA.AKITA.JP', - 'DAISEN.AKITA.JP', - 'FUJISATO.AKITA.JP', - 'GOJOME.AKITA.JP', - 'HACHIROGATA.AKITA.JP', - 'HAPPOU.AKITA.JP', - 'HIGASHINARUSE.AKITA.JP', - 'HONJO.AKITA.JP', - 'HONJYO.AKITA.JP', - 'IKAWA.AKITA.JP', - 'KAMIKOANI.AKITA.JP', - 'KAMIOKA.AKITA.JP', - 'KATAGAMI.AKITA.JP', - 'KAZUNO.AKITA.JP', - 'KITAAKITA.AKITA.JP', - 'KOSAKA.AKITA.JP', - 'KYOWA.AKITA.JP', - 'MISATO.AKITA.JP', - 'MITANE.AKITA.JP', - 'MORIYOSHI.AKITA.JP', - 'NIKAHO.AKITA.JP', - 'NOSHIRO.AKITA.JP', - 'ODATE.AKITA.JP', - 'OGA.AKITA.JP', - 'OGATA.AKITA.JP', - 'SEMBOKU.AKITA.JP', - 'YOKOTE.AKITA.JP', - 'YURIHONJO.AKITA.JP', - 'AOMORI.AOMORI.JP', - 'GONOHE.AOMORI.JP', - 'HACHINOHE.AOMORI.JP', - 'HASHIKAMI.AOMORI.JP', - 'HIRANAI.AOMORI.JP', - 'HIROSAKI.AOMORI.JP', - 'ITAYANAGI.AOMORI.JP', - 'KUROISHI.AOMORI.JP', - 'MISAWA.AOMORI.JP', - 'MUTSU.AOMORI.JP', - 'NAKADOMARI.AOMORI.JP', - 'NOHEJI.AOMORI.JP', - 'OIRASE.AOMORI.JP', - 'OWANI.AOMORI.JP', - 'ROKUNOHE.AOMORI.JP', - 'SANNOHE.AOMORI.JP', - 'SHICHINOHE.AOMORI.JP', - 'SHINGO.AOMORI.JP', - 'TAKKO.AOMORI.JP', - 'TOWADA.AOMORI.JP', - 'TSUGARU.AOMORI.JP', - 'TSURUTA.AOMORI.JP', - 'ABIKO.CHIBA.JP', - 'ASAHI.CHIBA.JP', - 'CHONAN.CHIBA.JP', - 'CHOSEI.CHIBA.JP', - 'CHOSHI.CHIBA.JP', - 'CHUO.CHIBA.JP', - 'FUNABASHI.CHIBA.JP', - 'FUTTSU.CHIBA.JP', - 'HANAMIGAWA.CHIBA.JP', - 'ICHIHARA.CHIBA.JP', - 'ICHIKAWA.CHIBA.JP', - 'ICHINOMIYA.CHIBA.JP', - 'INZAI.CHIBA.JP', - 'ISUMI.CHIBA.JP', - 'KAMAGAYA.CHIBA.JP', - 'KAMOGAWA.CHIBA.JP', - 'KASHIWA.CHIBA.JP', - 'KATORI.CHIBA.JP', - 'KATSUURA.CHIBA.JP', - 'KIMITSU.CHIBA.JP', - 'KISARAZU.CHIBA.JP', - 'KOZAKI.CHIBA.JP', - 'KUJUKURI.CHIBA.JP', - 'KYONAN.CHIBA.JP', - 'MATSUDO.CHIBA.JP', - 'MIDORI.CHIBA.JP', - 'MIHAMA.CHIBA.JP', - 'MINAMIBOSO.CHIBA.JP', - 'MOBARA.CHIBA.JP', - 'MUTSUZAWA.CHIBA.JP', - 'NAGARA.CHIBA.JP', - 'NAGAREYAMA.CHIBA.JP', - 'NARASHINO.CHIBA.JP', - 'NARITA.CHIBA.JP', - 'NODA.CHIBA.JP', - 'OAMISHIRASATO.CHIBA.JP', - 'OMIGAWA.CHIBA.JP', - 'ONJUKU.CHIBA.JP', - 'OTAKI.CHIBA.JP', - 'SAKAE.CHIBA.JP', - 'SAKURA.CHIBA.JP', - 'SHIMOFUSA.CHIBA.JP', - 'SHIRAKO.CHIBA.JP', - 'SHIROI.CHIBA.JP', - 'SHISUI.CHIBA.JP', - 'SODEGAURA.CHIBA.JP', - 'SOSA.CHIBA.JP', - 'TAKO.CHIBA.JP', - 'TATEYAMA.CHIBA.JP', - 'TOGANE.CHIBA.JP', - 'TOHNOSHO.CHIBA.JP', - 'TOMISATO.CHIBA.JP', - 'URAYASU.CHIBA.JP', - 'YACHIMATA.CHIBA.JP', - 'YACHIYO.CHIBA.JP', - 'YOKAICHIBA.CHIBA.JP', - 'YOKOSHIBAHIKARI.CHIBA.JP', - 'YOTSUKAIDO.CHIBA.JP', - 'AINAN.EHIME.JP', - 'HONAI.EHIME.JP', - 'IKATA.EHIME.JP', - 'IMABARI.EHIME.JP', - 'IYO.EHIME.JP', - 'KAMIJIMA.EHIME.JP', - 'KIHOKU.EHIME.JP', - 'KUMAKOGEN.EHIME.JP', - 'MASAKI.EHIME.JP', - 'MATSUNO.EHIME.JP', - 'MATSUYAMA.EHIME.JP', - 'NAMIKATA.EHIME.JP', - 'NIIHAMA.EHIME.JP', - 'OZU.EHIME.JP', - 'SAIJO.EHIME.JP', - 'SEIYO.EHIME.JP', - 'SHIKOKUCHUO.EHIME.JP', - 'TOBE.EHIME.JP', - 'TOON.EHIME.JP', - 'UCHIKO.EHIME.JP', - 'UWAJIMA.EHIME.JP', - 'YAWATAHAMA.EHIME.JP', - 'ECHIZEN.FUKUI.JP', - 'EIHEIJI.FUKUI.JP', - 'FUKUI.FUKUI.JP', - 'IKEDA.FUKUI.JP', - 'KATSUYAMA.FUKUI.JP', - 'MIHAMA.FUKUI.JP', - 'MINAMIECHIZEN.FUKUI.JP', - 'OBAMA.FUKUI.JP', - 'OHI.FUKUI.JP', - 'ONO.FUKUI.JP', - 'SABAE.FUKUI.JP', - 'SAKAI.FUKUI.JP', - 'TAKAHAMA.FUKUI.JP', - 'TSURUGA.FUKUI.JP', - 'WAKASA.FUKUI.JP', - 'ASHIYA.FUKUOKA.JP', - 'BUZEN.FUKUOKA.JP', - 'CHIKUGO.FUKUOKA.JP', - 'CHIKUHO.FUKUOKA.JP', - 'CHIKUJO.FUKUOKA.JP', - 'CHIKUSHINO.FUKUOKA.JP', - 'CHIKUZEN.FUKUOKA.JP', - 'CHUO.FUKUOKA.JP', - 'DAZAIFU.FUKUOKA.JP', - 'FUKUCHI.FUKUOKA.JP', - 'HAKATA.FUKUOKA.JP', - 'HIGASHI.FUKUOKA.JP', - 'HIROKAWA.FUKUOKA.JP', - 'HISAYAMA.FUKUOKA.JP', - 'IIZUKA.FUKUOKA.JP', - 'INATSUKI.FUKUOKA.JP', - 'KAHO.FUKUOKA.JP', - 'KASUGA.FUKUOKA.JP', - 'KASUYA.FUKUOKA.JP', - 'KAWARA.FUKUOKA.JP', - 'KEISEN.FUKUOKA.JP', - 'KOGA.FUKUOKA.JP', - 'KURATE.FUKUOKA.JP', - 'KUROGI.FUKUOKA.JP', - 'KURUME.FUKUOKA.JP', - 'MINAMI.FUKUOKA.JP', - 'MIYAKO.FUKUOKA.JP', - 'MIYAMA.FUKUOKA.JP', - 'MIYAWAKA.FUKUOKA.JP', - 'MIZUMAKI.FUKUOKA.JP', - 'MUNAKATA.FUKUOKA.JP', - 'NAKAGAWA.FUKUOKA.JP', - 'NAKAMA.FUKUOKA.JP', - 'NISHI.FUKUOKA.JP', - 'NOGATA.FUKUOKA.JP', - 'OGORI.FUKUOKA.JP', - 'OKAGAKI.FUKUOKA.JP', - 'OKAWA.FUKUOKA.JP', - 'OKI.FUKUOKA.JP', - 'OMUTA.FUKUOKA.JP', - 'ONGA.FUKUOKA.JP', - 'ONOJO.FUKUOKA.JP', - 'OTO.FUKUOKA.JP', - 'SAIGAWA.FUKUOKA.JP', - 'SASAGURI.FUKUOKA.JP', - 'SHINGU.FUKUOKA.JP', - 'SHINYOSHITOMI.FUKUOKA.JP', - 'SHONAI.FUKUOKA.JP', - 'SOEDA.FUKUOKA.JP', - 'SUE.FUKUOKA.JP', - 'TACHIARAI.FUKUOKA.JP', - 'TAGAWA.FUKUOKA.JP', - 'TAKATA.FUKUOKA.JP', - 'TOHO.FUKUOKA.JP', - 'TOYOTSU.FUKUOKA.JP', - 'TSUIKI.FUKUOKA.JP', - 'UKIHA.FUKUOKA.JP', - 'UMI.FUKUOKA.JP', - 'USUI.FUKUOKA.JP', - 'YAMADA.FUKUOKA.JP', - 'YAME.FUKUOKA.JP', - 'YANAGAWA.FUKUOKA.JP', - 'YUKUHASHI.FUKUOKA.JP', - 'AIZUBANGE.FUKUSHIMA.JP', - 'AIZUMISATO.FUKUSHIMA.JP', - 'AIZUWAKAMATSU.FUKUSHIMA.JP', - 'ASAKAWA.FUKUSHIMA.JP', - 'BANDAI.FUKUSHIMA.JP', - 'DATE.FUKUSHIMA.JP', - 'FUKUSHIMA.FUKUSHIMA.JP', - 'FURUDONO.FUKUSHIMA.JP', - 'FUTABA.FUKUSHIMA.JP', - 'HANAWA.FUKUSHIMA.JP', - 'HIGASHI.FUKUSHIMA.JP', - 'HIRATA.FUKUSHIMA.JP', - 'HIRONO.FUKUSHIMA.JP', - 'IITATE.FUKUSHIMA.JP', - 'INAWASHIRO.FUKUSHIMA.JP', - 'ISHIKAWA.FUKUSHIMA.JP', - 'IWAKI.FUKUSHIMA.JP', - 'IZUMIZAKI.FUKUSHIMA.JP', - 'KAGAMIISHI.FUKUSHIMA.JP', - 'KANEYAMA.FUKUSHIMA.JP', - 'KAWAMATA.FUKUSHIMA.JP', - 'KITAKATA.FUKUSHIMA.JP', - 'KITASHIOBARA.FUKUSHIMA.JP', - 'KOORI.FUKUSHIMA.JP', - 'KORIYAMA.FUKUSHIMA.JP', - 'KUNIMI.FUKUSHIMA.JP', - 'MIHARU.FUKUSHIMA.JP', - 'MISHIMA.FUKUSHIMA.JP', - 'NAMIE.FUKUSHIMA.JP', - 'NANGO.FUKUSHIMA.JP', - 'NISHIAIZU.FUKUSHIMA.JP', - 'NISHIGO.FUKUSHIMA.JP', - 'OKUMA.FUKUSHIMA.JP', - 'OMOTEGO.FUKUSHIMA.JP', - 'ONO.FUKUSHIMA.JP', - 'OTAMA.FUKUSHIMA.JP', - 'SAMEGAWA.FUKUSHIMA.JP', - 'SHIMOGO.FUKUSHIMA.JP', - 'SHIRAKAWA.FUKUSHIMA.JP', - 'SHOWA.FUKUSHIMA.JP', - 'SOMA.FUKUSHIMA.JP', - 'SUKAGAWA.FUKUSHIMA.JP', - 'TAISHIN.FUKUSHIMA.JP', - 'TAMAKAWA.FUKUSHIMA.JP', - 'TANAGURA.FUKUSHIMA.JP', - 'TENEI.FUKUSHIMA.JP', - 'YABUKI.FUKUSHIMA.JP', - 'YAMATO.FUKUSHIMA.JP', - 'YAMATSURI.FUKUSHIMA.JP', - 'YANAIZU.FUKUSHIMA.JP', - 'YUGAWA.FUKUSHIMA.JP', - 'ANPACHI.GIFU.JP', - 'ENA.GIFU.JP', - 'GIFU.GIFU.JP', - 'GINAN.GIFU.JP', - 'GODO.GIFU.JP', - 'GUJO.GIFU.JP', - 'HASHIMA.GIFU.JP', - 'HICHISO.GIFU.JP', - 'HIDA.GIFU.JP', - 'HIGASHISHIRAKAWA.GIFU.JP', - 'IBIGAWA.GIFU.JP', - 'IKEDA.GIFU.JP', - 'KAKAMIGAHARA.GIFU.JP', - 'KANI.GIFU.JP', - 'KASAHARA.GIFU.JP', - 'KASAMATSU.GIFU.JP', - 'KAWAUE.GIFU.JP', - 'KITAGATA.GIFU.JP', - 'MINO.GIFU.JP', - 'MINOKAMO.GIFU.JP', - 'MITAKE.GIFU.JP', - 'MIZUNAMI.GIFU.JP', - 'MOTOSU.GIFU.JP', - 'NAKATSUGAWA.GIFU.JP', - 'OGAKI.GIFU.JP', - 'SAKAHOGI.GIFU.JP', - 'SEKI.GIFU.JP', - 'SEKIGAHARA.GIFU.JP', - 'SHIRAKAWA.GIFU.JP', - 'TAJIMI.GIFU.JP', - 'TAKAYAMA.GIFU.JP', - 'TARUI.GIFU.JP', - 'TOKI.GIFU.JP', - 'TOMIKA.GIFU.JP', - 'WANOUCHI.GIFU.JP', - 'YAMAGATA.GIFU.JP', - 'YAOTSU.GIFU.JP', - 'YORO.GIFU.JP', - 'ANNAKA.GUNMA.JP', - 'CHIYODA.GUNMA.JP', - 'FUJIOKA.GUNMA.JP', - 'HIGASHIAGATSUMA.GUNMA.JP', - 'ISESAKI.GUNMA.JP', - 'ITAKURA.GUNMA.JP', - 'KANNA.GUNMA.JP', - 'KANRA.GUNMA.JP', - 'KATASHINA.GUNMA.JP', - 'KAWABA.GUNMA.JP', - 'KIRYU.GUNMA.JP', - 'KUSATSU.GUNMA.JP', - 'MAEBASHI.GUNMA.JP', - 'MEIWA.GUNMA.JP', - 'MIDORI.GUNMA.JP', - 'MINAKAMI.GUNMA.JP', - 'NAGANOHARA.GUNMA.JP', - 'NAKANOJO.GUNMA.JP', - 'NANMOKU.GUNMA.JP', - 'NUMATA.GUNMA.JP', - 'OIZUMI.GUNMA.JP', - 'ORA.GUNMA.JP', - 'OTA.GUNMA.JP', - 'SHIBUKAWA.GUNMA.JP', - 'SHIMONITA.GUNMA.JP', - 'SHINTO.GUNMA.JP', - 'SHOWA.GUNMA.JP', - 'TAKASAKI.GUNMA.JP', - 'TAKAYAMA.GUNMA.JP', - 'TAMAMURA.GUNMA.JP', - 'TATEBAYASHI.GUNMA.JP', - 'TOMIOKA.GUNMA.JP', - 'TSUKIYONO.GUNMA.JP', - 'TSUMAGOI.GUNMA.JP', - 'UENO.GUNMA.JP', - 'YOSHIOKA.GUNMA.JP', - 'ASAMINAMI.HIROSHIMA.JP', - 'DAIWA.HIROSHIMA.JP', - 'ETAJIMA.HIROSHIMA.JP', - 'FUCHU.HIROSHIMA.JP', - 'FUKUYAMA.HIROSHIMA.JP', - 'HATSUKAICHI.HIROSHIMA.JP', - 'HIGASHIHIROSHIMA.HIROSHIMA.JP', - 'HONGO.HIROSHIMA.JP', - 'JINSEKIKOGEN.HIROSHIMA.JP', - 'KAITA.HIROSHIMA.JP', - 'KUI.HIROSHIMA.JP', - 'KUMANO.HIROSHIMA.JP', - 'KURE.HIROSHIMA.JP', - 'MIHARA.HIROSHIMA.JP', - 'MIYOSHI.HIROSHIMA.JP', - 'NAKA.HIROSHIMA.JP', - 'ONOMICHI.HIROSHIMA.JP', - 'OSAKIKAMIJIMA.HIROSHIMA.JP', - 'OTAKE.HIROSHIMA.JP', - 'SAKA.HIROSHIMA.JP', - 'SERA.HIROSHIMA.JP', - 'SERANISHI.HIROSHIMA.JP', - 'SHINICHI.HIROSHIMA.JP', - 'SHOBARA.HIROSHIMA.JP', - 'TAKEHARA.HIROSHIMA.JP', - 'ABASHIRI.HOKKAIDO.JP', - 'ABIRA.HOKKAIDO.JP', - 'AIBETSU.HOKKAIDO.JP', - 'AKABIRA.HOKKAIDO.JP', - 'AKKESHI.HOKKAIDO.JP', - 'ASAHIKAWA.HOKKAIDO.JP', - 'ASHIBETSU.HOKKAIDO.JP', - 'ASHORO.HOKKAIDO.JP', - 'ASSABU.HOKKAIDO.JP', - 'ATSUMA.HOKKAIDO.JP', - 'BIBAI.HOKKAIDO.JP', - 'BIEI.HOKKAIDO.JP', - 'BIFUKA.HOKKAIDO.JP', - 'BIHORO.HOKKAIDO.JP', - 'BIRATORI.HOKKAIDO.JP', - 'CHIPPUBETSU.HOKKAIDO.JP', - 'CHITOSE.HOKKAIDO.JP', - 'DATE.HOKKAIDO.JP', - 'EBETSU.HOKKAIDO.JP', - 'EMBETSU.HOKKAIDO.JP', - 'ENIWA.HOKKAIDO.JP', - 'ERIMO.HOKKAIDO.JP', - 'ESAN.HOKKAIDO.JP', - 'ESASHI.HOKKAIDO.JP', - 'FUKAGAWA.HOKKAIDO.JP', - 'FUKUSHIMA.HOKKAIDO.JP', - 'FURANO.HOKKAIDO.JP', - 'FURUBIRA.HOKKAIDO.JP', - 'HABORO.HOKKAIDO.JP', - 'HAKODATE.HOKKAIDO.JP', - 'HAMATONBETSU.HOKKAIDO.JP', - 'HIDAKA.HOKKAIDO.JP', - 'HIGASHIKAGURA.HOKKAIDO.JP', - 'HIGASHIKAWA.HOKKAIDO.JP', - 'HIROO.HOKKAIDO.JP', - 'HOKURYU.HOKKAIDO.JP', - 'HOKUTO.HOKKAIDO.JP', - 'HONBETSU.HOKKAIDO.JP', - 'HOROKANAI.HOKKAIDO.JP', - 'HORONOBE.HOKKAIDO.JP', - 'IKEDA.HOKKAIDO.JP', - 'IMAKANE.HOKKAIDO.JP', - 'ISHIKARI.HOKKAIDO.JP', - 'IWAMIZAWA.HOKKAIDO.JP', - 'IWANAI.HOKKAIDO.JP', - 'KAMIFURANO.HOKKAIDO.JP', - 'KAMIKAWA.HOKKAIDO.JP', - 'KAMISHIHORO.HOKKAIDO.JP', - 'KAMISUNAGAWA.HOKKAIDO.JP', - 'KAMOENAI.HOKKAIDO.JP', - 'KAYABE.HOKKAIDO.JP', - 'KEMBUCHI.HOKKAIDO.JP', - 'KIKONAI.HOKKAIDO.JP', - 'KIMOBETSU.HOKKAIDO.JP', - 'KITAHIROSHIMA.HOKKAIDO.JP', - 'KITAMI.HOKKAIDO.JP', - 'KIYOSATO.HOKKAIDO.JP', - 'KOSHIMIZU.HOKKAIDO.JP', - 'KUNNEPPU.HOKKAIDO.JP', - 'KURIYAMA.HOKKAIDO.JP', - 'KUROMATSUNAI.HOKKAIDO.JP', - 'KUSHIRO.HOKKAIDO.JP', - 'KUTCHAN.HOKKAIDO.JP', - 'KYOWA.HOKKAIDO.JP', - 'MASHIKE.HOKKAIDO.JP', - 'MATSUMAE.HOKKAIDO.JP', - 'MIKASA.HOKKAIDO.JP', - 'MINAMIFURANO.HOKKAIDO.JP', - 'MOMBETSU.HOKKAIDO.JP', - 'MOSEUSHI.HOKKAIDO.JP', - 'MUKAWA.HOKKAIDO.JP', - 'MURORAN.HOKKAIDO.JP', - 'NAIE.HOKKAIDO.JP', - 'NAKAGAWA.HOKKAIDO.JP', - 'NAKASATSUNAI.HOKKAIDO.JP', - 'NAKATOMBETSU.HOKKAIDO.JP', - 'NANAE.HOKKAIDO.JP', - 'NANPORO.HOKKAIDO.JP', - 'NAYORO.HOKKAIDO.JP', - 'NEMURO.HOKKAIDO.JP', - 'NIIKAPPU.HOKKAIDO.JP', - 'NIKI.HOKKAIDO.JP', - 'NISHIOKOPPE.HOKKAIDO.JP', - 'NOBORIBETSU.HOKKAIDO.JP', - 'NUMATA.HOKKAIDO.JP', - 'OBIHIRO.HOKKAIDO.JP', - 'OBIRA.HOKKAIDO.JP', - 'OKETO.HOKKAIDO.JP', - 'OKOPPE.HOKKAIDO.JP', - 'OTARU.HOKKAIDO.JP', - 'OTOBE.HOKKAIDO.JP', - 'OTOFUKE.HOKKAIDO.JP', - 'OTOINEPPU.HOKKAIDO.JP', - 'OUMU.HOKKAIDO.JP', - 'OZORA.HOKKAIDO.JP', - 'PIPPU.HOKKAIDO.JP', - 'RANKOSHI.HOKKAIDO.JP', - 'REBUN.HOKKAIDO.JP', - 'RIKUBETSU.HOKKAIDO.JP', - 'RISHIRI.HOKKAIDO.JP', - 'RISHIRIFUJI.HOKKAIDO.JP', - 'SAROMA.HOKKAIDO.JP', - 'SARUFUTSU.HOKKAIDO.JP', - 'SHAKOTAN.HOKKAIDO.JP', - 'SHARI.HOKKAIDO.JP', - 'SHIBECHA.HOKKAIDO.JP', - 'SHIBETSU.HOKKAIDO.JP', - 'SHIKABE.HOKKAIDO.JP', - 'SHIKAOI.HOKKAIDO.JP', - 'SHIMAMAKI.HOKKAIDO.JP', - 'SHIMIZU.HOKKAIDO.JP', - 'SHIMOKAWA.HOKKAIDO.JP', - 'SHINSHINOTSU.HOKKAIDO.JP', - 'SHINTOKU.HOKKAIDO.JP', - 'SHIRANUKA.HOKKAIDO.JP', - 'SHIRAOI.HOKKAIDO.JP', - 'SHIRIUCHI.HOKKAIDO.JP', - 'SOBETSU.HOKKAIDO.JP', - 'SUNAGAWA.HOKKAIDO.JP', - 'TAIKI.HOKKAIDO.JP', - 'TAKASU.HOKKAIDO.JP', - 'TAKIKAWA.HOKKAIDO.JP', - 'TAKINOUE.HOKKAIDO.JP', - 'TESHIKAGA.HOKKAIDO.JP', - 'TOBETSU.HOKKAIDO.JP', - 'TOHMA.HOKKAIDO.JP', - 'TOMAKOMAI.HOKKAIDO.JP', - 'TOMARI.HOKKAIDO.JP', - 'TOYA.HOKKAIDO.JP', - 'TOYAKO.HOKKAIDO.JP', - 'TOYOTOMI.HOKKAIDO.JP', - 'TOYOURA.HOKKAIDO.JP', - 'TSUBETSU.HOKKAIDO.JP', - 'TSUKIGATA.HOKKAIDO.JP', - 'URAKAWA.HOKKAIDO.JP', - 'URAUSU.HOKKAIDO.JP', - 'URYU.HOKKAIDO.JP', - 'UTASHINAI.HOKKAIDO.JP', - 'WAKKANAI.HOKKAIDO.JP', - 'WASSAMU.HOKKAIDO.JP', - 'YAKUMO.HOKKAIDO.JP', - 'YOICHI.HOKKAIDO.JP', - 'AIOI.HYOGO.JP', - 'AKASHI.HYOGO.JP', - 'AKO.HYOGO.JP', - 'AMAGASAKI.HYOGO.JP', - 'AOGAKI.HYOGO.JP', - 'ASAGO.HYOGO.JP', - 'ASHIYA.HYOGO.JP', - 'AWAJI.HYOGO.JP', - 'FUKUSAKI.HYOGO.JP', - 'GOSHIKI.HYOGO.JP', - 'HARIMA.HYOGO.JP', - 'HIMEJI.HYOGO.JP', - 'ICHIKAWA.HYOGO.JP', - 'INAGAWA.HYOGO.JP', - 'ITAMI.HYOGO.JP', - 'KAKOGAWA.HYOGO.JP', - 'KAMIGORI.HYOGO.JP', - 'KAMIKAWA.HYOGO.JP', - 'KASAI.HYOGO.JP', - 'KASUGA.HYOGO.JP', - 'KAWANISHI.HYOGO.JP', - 'MIKI.HYOGO.JP', - 'MINAMIAWAJI.HYOGO.JP', - 'NISHINOMIYA.HYOGO.JP', - 'NISHIWAKI.HYOGO.JP', - 'ONO.HYOGO.JP', - 'SANDA.HYOGO.JP', - 'SANNAN.HYOGO.JP', - 'SASAYAMA.HYOGO.JP', - 'SAYO.HYOGO.JP', - 'SHINGU.HYOGO.JP', - 'SHINONSEN.HYOGO.JP', - 'SHISO.HYOGO.JP', - 'SUMOTO.HYOGO.JP', - 'TAISHI.HYOGO.JP', - 'TAKA.HYOGO.JP', - 'TAKARAZUKA.HYOGO.JP', - 'TAKASAGO.HYOGO.JP', - 'TAKINO.HYOGO.JP', - 'TAMBA.HYOGO.JP', - 'TATSUNO.HYOGO.JP', - 'TOYOOKA.HYOGO.JP', - 'YABU.HYOGO.JP', - 'YASHIRO.HYOGO.JP', - 'YOKA.HYOGO.JP', - 'YOKAWA.HYOGO.JP', - 'AMI.IBARAKI.JP', - 'ASAHI.IBARAKI.JP', - 'BANDO.IBARAKI.JP', - 'CHIKUSEI.IBARAKI.JP', - 'DAIGO.IBARAKI.JP', - 'FUJISHIRO.IBARAKI.JP', - 'HITACHI.IBARAKI.JP', - 'HITACHINAKA.IBARAKI.JP', - 'HITACHIOMIYA.IBARAKI.JP', - 'HITACHIOTA.IBARAKI.JP', - 'IBARAKI.IBARAKI.JP', - 'INA.IBARAKI.JP', - 'INASHIKI.IBARAKI.JP', - 'ITAKO.IBARAKI.JP', - 'IWAMA.IBARAKI.JP', - 'JOSO.IBARAKI.JP', - 'KAMISU.IBARAKI.JP', - 'KASAMA.IBARAKI.JP', - 'KASHIMA.IBARAKI.JP', - 'KASUMIGAURA.IBARAKI.JP', - 'KOGA.IBARAKI.JP', - 'MIHO.IBARAKI.JP', - 'MITO.IBARAKI.JP', - 'MORIYA.IBARAKI.JP', - 'NAKA.IBARAKI.JP', - 'NAMEGATA.IBARAKI.JP', - 'OARAI.IBARAKI.JP', - 'OGAWA.IBARAKI.JP', - 'OMITAMA.IBARAKI.JP', - 'RYUGASAKI.IBARAKI.JP', - 'SAKAI.IBARAKI.JP', - 'SAKURAGAWA.IBARAKI.JP', - 'SHIMODATE.IBARAKI.JP', - 'SHIMOTSUMA.IBARAKI.JP', - 'SHIROSATO.IBARAKI.JP', - 'SOWA.IBARAKI.JP', - 'SUIFU.IBARAKI.JP', - 'TAKAHAGI.IBARAKI.JP', - 'TAMATSUKURI.IBARAKI.JP', - 'TOKAI.IBARAKI.JP', - 'TOMOBE.IBARAKI.JP', - 'TONE.IBARAKI.JP', - 'TORIDE.IBARAKI.JP', - 'TSUCHIURA.IBARAKI.JP', - 'TSUKUBA.IBARAKI.JP', - 'UCHIHARA.IBARAKI.JP', - 'USHIKU.IBARAKI.JP', - 'YACHIYO.IBARAKI.JP', - 'YAMAGATA.IBARAKI.JP', - 'YAWARA.IBARAKI.JP', - 'YUKI.IBARAKI.JP', - 'ANAMIZU.ISHIKAWA.JP', - 'HAKUI.ISHIKAWA.JP', - 'HAKUSAN.ISHIKAWA.JP', - 'KAGA.ISHIKAWA.JP', - 'KAHOKU.ISHIKAWA.JP', - 'KANAZAWA.ISHIKAWA.JP', - 'KAWAKITA.ISHIKAWA.JP', - 'KOMATSU.ISHIKAWA.JP', - 'NAKANOTO.ISHIKAWA.JP', - 'NANAO.ISHIKAWA.JP', - 'NOMI.ISHIKAWA.JP', - 'NONOICHI.ISHIKAWA.JP', - 'NOTO.ISHIKAWA.JP', - 'SHIKA.ISHIKAWA.JP', - 'SUZU.ISHIKAWA.JP', - 'TSUBATA.ISHIKAWA.JP', - 'TSURUGI.ISHIKAWA.JP', - 'UCHINADA.ISHIKAWA.JP', - 'WAJIMA.ISHIKAWA.JP', - 'FUDAI.IWATE.JP', - 'FUJISAWA.IWATE.JP', - 'HANAMAKI.IWATE.JP', - 'HIRAIZUMI.IWATE.JP', - 'HIRONO.IWATE.JP', - 'ICHINOHE.IWATE.JP', - 'ICHINOSEKI.IWATE.JP', - 'IWAIZUMI.IWATE.JP', - 'IWATE.IWATE.JP', - 'JOBOJI.IWATE.JP', - 'KAMAISHI.IWATE.JP', - 'KANEGASAKI.IWATE.JP', - 'KARUMAI.IWATE.JP', - 'KAWAI.IWATE.JP', - 'KITAKAMI.IWATE.JP', - 'KUJI.IWATE.JP', - 'KUNOHE.IWATE.JP', - 'KUZUMAKI.IWATE.JP', - 'MIYAKO.IWATE.JP', - 'MIZUSAWA.IWATE.JP', - 'MORIOKA.IWATE.JP', - 'NINOHE.IWATE.JP', - 'NODA.IWATE.JP', - 'OFUNATO.IWATE.JP', - 'OSHU.IWATE.JP', - 'OTSUCHI.IWATE.JP', - 'RIKUZENTAKATA.IWATE.JP', - 'SHIWA.IWATE.JP', - 'SHIZUKUISHI.IWATE.JP', - 'SUMITA.IWATE.JP', - 'TANOHATA.IWATE.JP', - 'TONO.IWATE.JP', - 'YAHABA.IWATE.JP', - 'YAMADA.IWATE.JP', - 'AYAGAWA.KAGAWA.JP', - 'HIGASHIKAGAWA.KAGAWA.JP', - 'KANONJI.KAGAWA.JP', - 'KOTOHIRA.KAGAWA.JP', - 'MANNO.KAGAWA.JP', - 'MARUGAME.KAGAWA.JP', - 'MITOYO.KAGAWA.JP', - 'NAOSHIMA.KAGAWA.JP', - 'SANUKI.KAGAWA.JP', - 'TADOTSU.KAGAWA.JP', - 'TAKAMATSU.KAGAWA.JP', - 'TONOSHO.KAGAWA.JP', - 'UCHINOMI.KAGAWA.JP', - 'UTAZU.KAGAWA.JP', - 'ZENTSUJI.KAGAWA.JP', - 'AKUNE.KAGOSHIMA.JP', - 'AMAMI.KAGOSHIMA.JP', - 'HIOKI.KAGOSHIMA.JP', - 'ISA.KAGOSHIMA.JP', - 'ISEN.KAGOSHIMA.JP', - 'IZUMI.KAGOSHIMA.JP', - 'KAGOSHIMA.KAGOSHIMA.JP', - 'KANOYA.KAGOSHIMA.JP', - 'KAWANABE.KAGOSHIMA.JP', - 'KINKO.KAGOSHIMA.JP', - 'KOUYAMA.KAGOSHIMA.JP', - 'MAKURAZAKI.KAGOSHIMA.JP', - 'MATSUMOTO.KAGOSHIMA.JP', - 'MINAMITANE.KAGOSHIMA.JP', - 'NAKATANE.KAGOSHIMA.JP', - 'NISHINOOMOTE.KAGOSHIMA.JP', - 'SATSUMASENDAI.KAGOSHIMA.JP', - 'SOO.KAGOSHIMA.JP', - 'TARUMIZU.KAGOSHIMA.JP', - 'YUSUI.KAGOSHIMA.JP', - 'AIKAWA.KANAGAWA.JP', - 'ATSUGI.KANAGAWA.JP', - 'AYASE.KANAGAWA.JP', - 'CHIGASAKI.KANAGAWA.JP', - 'EBINA.KANAGAWA.JP', - 'FUJISAWA.KANAGAWA.JP', - 'HADANO.KANAGAWA.JP', - 'HAKONE.KANAGAWA.JP', - 'HIRATSUKA.KANAGAWA.JP', - 'ISEHARA.KANAGAWA.JP', - 'KAISEI.KANAGAWA.JP', - 'KAMAKURA.KANAGAWA.JP', - 'KIYOKAWA.KANAGAWA.JP', - 'MATSUDA.KANAGAWA.JP', - 'MINAMIASHIGARA.KANAGAWA.JP', - 'MIURA.KANAGAWA.JP', - 'NAKAI.KANAGAWA.JP', - 'NINOMIYA.KANAGAWA.JP', - 'ODAWARA.KANAGAWA.JP', - 'OI.KANAGAWA.JP', - 'OISO.KANAGAWA.JP', - 'SAGAMIHARA.KANAGAWA.JP', - 'SAMUKAWA.KANAGAWA.JP', - 'TSUKUI.KANAGAWA.JP', - 'YAMAKITA.KANAGAWA.JP', - 'YAMATO.KANAGAWA.JP', - 'YOKOSUKA.KANAGAWA.JP', - 'YUGAWARA.KANAGAWA.JP', - 'ZAMA.KANAGAWA.JP', - 'ZUSHI.KANAGAWA.JP', - 'AKI.KOCHI.JP', - 'GEISEI.KOCHI.JP', - 'HIDAKA.KOCHI.JP', - 'HIGASHITSUNO.KOCHI.JP', - 'INO.KOCHI.JP', - 'KAGAMI.KOCHI.JP', - 'KAMI.KOCHI.JP', - 'KITAGAWA.KOCHI.JP', - 'KOCHI.KOCHI.JP', - 'MIHARA.KOCHI.JP', - 'MOTOYAMA.KOCHI.JP', - 'MUROTO.KOCHI.JP', - 'NAHARI.KOCHI.JP', - 'NAKAMURA.KOCHI.JP', - 'NANKOKU.KOCHI.JP', - 'NISHITOSA.KOCHI.JP', - 'NIYODOGAWA.KOCHI.JP', - 'OCHI.KOCHI.JP', - 'OKAWA.KOCHI.JP', - 'OTOYO.KOCHI.JP', - 'OTSUKI.KOCHI.JP', - 'SAKAWA.KOCHI.JP', - 'SUKUMO.KOCHI.JP', - 'SUSAKI.KOCHI.JP', - 'TOSA.KOCHI.JP', - 'TOSASHIMIZU.KOCHI.JP', - 'TOYO.KOCHI.JP', - 'TSUNO.KOCHI.JP', - 'UMAJI.KOCHI.JP', - 'YASUDA.KOCHI.JP', - 'YUSUHARA.KOCHI.JP', - 'AMAKUSA.KUMAMOTO.JP', - 'ARAO.KUMAMOTO.JP', - 'ASO.KUMAMOTO.JP', - 'CHOYO.KUMAMOTO.JP', - 'GYOKUTO.KUMAMOTO.JP', - 'KAMIAMAKUSA.KUMAMOTO.JP', - 'KIKUCHI.KUMAMOTO.JP', - 'KUMAMOTO.KUMAMOTO.JP', - 'MASHIKI.KUMAMOTO.JP', - 'MIFUNE.KUMAMOTO.JP', - 'MINAMATA.KUMAMOTO.JP', - 'MINAMIOGUNI.KUMAMOTO.JP', - 'NAGASU.KUMAMOTO.JP', - 'NISHIHARA.KUMAMOTO.JP', - 'OGUNI.KUMAMOTO.JP', - 'OZU.KUMAMOTO.JP', - 'SUMOTO.KUMAMOTO.JP', - 'TAKAMORI.KUMAMOTO.JP', - 'UKI.KUMAMOTO.JP', - 'UTO.KUMAMOTO.JP', - 'YAMAGA.KUMAMOTO.JP', - 'YAMATO.KUMAMOTO.JP', - 'YATSUSHIRO.KUMAMOTO.JP', - 'AYABE.KYOTO.JP', - 'FUKUCHIYAMA.KYOTO.JP', - 'HIGASHIYAMA.KYOTO.JP', - 'IDE.KYOTO.JP', - 'INE.KYOTO.JP', - 'JOYO.KYOTO.JP', - 'KAMEOKA.KYOTO.JP', - 'KAMO.KYOTO.JP', - 'KITA.KYOTO.JP', - 'KIZU.KYOTO.JP', - 'KUMIYAMA.KYOTO.JP', - 'KYOTAMBA.KYOTO.JP', - 'KYOTANABE.KYOTO.JP', - 'KYOTANGO.KYOTO.JP', - 'MAIZURU.KYOTO.JP', - 'MINAMI.KYOTO.JP', - 'MINAMIYAMASHIRO.KYOTO.JP', - 'MIYAZU.KYOTO.JP', - 'MUKO.KYOTO.JP', - 'NAGAOKAKYO.KYOTO.JP', - 'NAKAGYO.KYOTO.JP', - 'NANTAN.KYOTO.JP', - 'OYAMAZAKI.KYOTO.JP', - 'SAKYO.KYOTO.JP', - 'SEIKA.KYOTO.JP', - 'TANABE.KYOTO.JP', - 'UJI.KYOTO.JP', - 'UJITAWARA.KYOTO.JP', - 'WAZUKA.KYOTO.JP', - 'YAMASHINA.KYOTO.JP', - 'YAWATA.KYOTO.JP', - 'ASAHI.MIE.JP', - 'INABE.MIE.JP', - 'ISE.MIE.JP', - 'KAMEYAMA.MIE.JP', - 'KAWAGOE.MIE.JP', - 'KIHO.MIE.JP', - 'KISOSAKI.MIE.JP', - 'KIWA.MIE.JP', - 'KOMONO.MIE.JP', - 'KUMANO.MIE.JP', - 'KUWANA.MIE.JP', - 'MATSUSAKA.MIE.JP', - 'MEIWA.MIE.JP', - 'MIHAMA.MIE.JP', - 'MINAMIISE.MIE.JP', - 'MISUGI.MIE.JP', - 'MIYAMA.MIE.JP', - 'NABARI.MIE.JP', - 'SHIMA.MIE.JP', - 'SUZUKA.MIE.JP', - 'TADO.MIE.JP', - 'TAIKI.MIE.JP', - 'TAKI.MIE.JP', - 'TAMAKI.MIE.JP', - 'TOBA.MIE.JP', - 'TSU.MIE.JP', - 'UDONO.MIE.JP', - 'URESHINO.MIE.JP', - 'WATARAI.MIE.JP', - 'YOKKAICHI.MIE.JP', - 'FURUKAWA.MIYAGI.JP', - 'HIGASHIMATSUSHIMA.MIYAGI.JP', - 'ISHINOMAKI.MIYAGI.JP', - 'IWANUMA.MIYAGI.JP', - 'KAKUDA.MIYAGI.JP', - 'KAMI.MIYAGI.JP', - 'KAWASAKI.MIYAGI.JP', - 'MARUMORI.MIYAGI.JP', - 'MATSUSHIMA.MIYAGI.JP', - 'MINAMISANRIKU.MIYAGI.JP', - 'MISATO.MIYAGI.JP', - 'MURATA.MIYAGI.JP', - 'NATORI.MIYAGI.JP', - 'OGAWARA.MIYAGI.JP', - 'OHIRA.MIYAGI.JP', - 'ONAGAWA.MIYAGI.JP', - 'OSAKI.MIYAGI.JP', - 'RIFU.MIYAGI.JP', - 'SEMINE.MIYAGI.JP', - 'SHIBATA.MIYAGI.JP', - 'SHICHIKASHUKU.MIYAGI.JP', - 'SHIKAMA.MIYAGI.JP', - 'SHIOGAMA.MIYAGI.JP', - 'SHIROISHI.MIYAGI.JP', - 'TAGAJO.MIYAGI.JP', - 'TAIWA.MIYAGI.JP', - 'TOME.MIYAGI.JP', - 'TOMIYA.MIYAGI.JP', - 'WAKUYA.MIYAGI.JP', - 'WATARI.MIYAGI.JP', - 'YAMAMOTO.MIYAGI.JP', - 'ZAO.MIYAGI.JP', - 'AYA.MIYAZAKI.JP', - 'EBINO.MIYAZAKI.JP', - 'GOKASE.MIYAZAKI.JP', - 'HYUGA.MIYAZAKI.JP', - 'KADOGAWA.MIYAZAKI.JP', - 'KAWAMINAMI.MIYAZAKI.JP', - 'KIJO.MIYAZAKI.JP', - 'KITAGAWA.MIYAZAKI.JP', - 'KITAKATA.MIYAZAKI.JP', - 'KITAURA.MIYAZAKI.JP', - 'KOBAYASHI.MIYAZAKI.JP', - 'KUNITOMI.MIYAZAKI.JP', - 'KUSHIMA.MIYAZAKI.JP', - 'MIMATA.MIYAZAKI.JP', - 'MIYAKONOJO.MIYAZAKI.JP', - 'MIYAZAKI.MIYAZAKI.JP', - 'MOROTSUKA.MIYAZAKI.JP', - 'NICHINAN.MIYAZAKI.JP', - 'NISHIMERA.MIYAZAKI.JP', - 'NOBEOKA.MIYAZAKI.JP', - 'SAITO.MIYAZAKI.JP', - 'SHIIBA.MIYAZAKI.JP', - 'SHINTOMI.MIYAZAKI.JP', - 'TAKAHARU.MIYAZAKI.JP', - 'TAKANABE.MIYAZAKI.JP', - 'TAKAZAKI.MIYAZAKI.JP', - 'TSUNO.MIYAZAKI.JP', - 'ACHI.NAGANO.JP', - 'AGEMATSU.NAGANO.JP', - 'ANAN.NAGANO.JP', - 'AOKI.NAGANO.JP', - 'ASAHI.NAGANO.JP', - 'AZUMINO.NAGANO.JP', - 'CHIKUHOKU.NAGANO.JP', - 'CHIKUMA.NAGANO.JP', - 'CHINO.NAGANO.JP', - 'FUJIMI.NAGANO.JP', - 'HAKUBA.NAGANO.JP', - 'HARA.NAGANO.JP', - 'HIRAYA.NAGANO.JP', - 'IIDA.NAGANO.JP', - 'IIJIMA.NAGANO.JP', - 'IIYAMA.NAGANO.JP', - 'IIZUNA.NAGANO.JP', - 'IKEDA.NAGANO.JP', - 'IKUSAKA.NAGANO.JP', - 'INA.NAGANO.JP', - 'KARUIZAWA.NAGANO.JP', - 'KAWAKAMI.NAGANO.JP', - 'KISO.NAGANO.JP', - 'KISOFUKUSHIMA.NAGANO.JP', - 'KITAAIKI.NAGANO.JP', - 'KOMAGANE.NAGANO.JP', - 'KOMORO.NAGANO.JP', - 'MATSUKAWA.NAGANO.JP', - 'MATSUMOTO.NAGANO.JP', - 'MIASA.NAGANO.JP', - 'MINAMIAIKI.NAGANO.JP', - 'MINAMIMAKI.NAGANO.JP', - 'MINAMIMINOWA.NAGANO.JP', - 'MINOWA.NAGANO.JP', - 'MIYADA.NAGANO.JP', - 'MIYOTA.NAGANO.JP', - 'MOCHIZUKI.NAGANO.JP', - 'NAGANO.NAGANO.JP', - 'NAGAWA.NAGANO.JP', - 'NAGISO.NAGANO.JP', - 'NAKAGAWA.NAGANO.JP', - 'NAKANO.NAGANO.JP', - 'NOZAWAONSEN.NAGANO.JP', - 'OBUSE.NAGANO.JP', - 'OGAWA.NAGANO.JP', - 'OKAYA.NAGANO.JP', - 'OMACHI.NAGANO.JP', - 'OMI.NAGANO.JP', - 'OOKUWA.NAGANO.JP', - 'OOSHIKA.NAGANO.JP', - 'OTAKI.NAGANO.JP', - 'OTARI.NAGANO.JP', - 'SAKAE.NAGANO.JP', - 'SAKAKI.NAGANO.JP', - 'SAKU.NAGANO.JP', - 'SAKUHO.NAGANO.JP', - 'SHIMOSUWA.NAGANO.JP', - 'SHINANOMACHI.NAGANO.JP', - 'SHIOJIRI.NAGANO.JP', - 'SUWA.NAGANO.JP', - 'SUZAKA.NAGANO.JP', - 'TAKAGI.NAGANO.JP', - 'TAKAMORI.NAGANO.JP', - 'TAKAYAMA.NAGANO.JP', - 'TATESHINA.NAGANO.JP', - 'TATSUNO.NAGANO.JP', - 'TOGAKUSHI.NAGANO.JP', - 'TOGURA.NAGANO.JP', - 'TOMI.NAGANO.JP', - 'UEDA.NAGANO.JP', - 'WADA.NAGANO.JP', - 'YAMAGATA.NAGANO.JP', - 'YAMANOUCHI.NAGANO.JP', - 'YASAKA.NAGANO.JP', - 'YASUOKA.NAGANO.JP', - 'CHIJIWA.NAGASAKI.JP', - 'FUTSU.NAGASAKI.JP', - 'GOTO.NAGASAKI.JP', - 'HASAMI.NAGASAKI.JP', - 'HIRADO.NAGASAKI.JP', - 'IKI.NAGASAKI.JP', - 'ISAHAYA.NAGASAKI.JP', - 'KAWATANA.NAGASAKI.JP', - 'KUCHINOTSU.NAGASAKI.JP', - 'MATSUURA.NAGASAKI.JP', - 'NAGASAKI.NAGASAKI.JP', - 'OBAMA.NAGASAKI.JP', - 'OMURA.NAGASAKI.JP', - 'OSETO.NAGASAKI.JP', - 'SAIKAI.NAGASAKI.JP', - 'SASEBO.NAGASAKI.JP', - 'SEIHI.NAGASAKI.JP', - 'SHIMABARA.NAGASAKI.JP', - 'SHINKAMIGOTO.NAGASAKI.JP', - 'TOGITSU.NAGASAKI.JP', - 'TSUSHIMA.NAGASAKI.JP', - 'UNZEN.NAGASAKI.JP', - 'ANDO.NARA.JP', - 'GOSE.NARA.JP', - 'HEGURI.NARA.JP', - 'HIGASHIYOSHINO.NARA.JP', - 'IKARUGA.NARA.JP', - 'IKOMA.NARA.JP', - 'KAMIKITAYAMA.NARA.JP', - 'KANMAKI.NARA.JP', - 'KASHIBA.NARA.JP', - 'KASHIHARA.NARA.JP', - 'KATSURAGI.NARA.JP', - 'KAWAI.NARA.JP', - 'KAWAKAMI.NARA.JP', - 'KAWANISHI.NARA.JP', - 'KORYO.NARA.JP', - 'KUROTAKI.NARA.JP', - 'MITSUE.NARA.JP', - 'MIYAKE.NARA.JP', - 'NARA.NARA.JP', - 'NOSEGAWA.NARA.JP', - 'OJI.NARA.JP', - 'OUDA.NARA.JP', - 'OYODO.NARA.JP', - 'SAKURAI.NARA.JP', - 'SANGO.NARA.JP', - 'SHIMOICHI.NARA.JP', - 'SHIMOKITAYAMA.NARA.JP', - 'SHINJO.NARA.JP', - 'SONI.NARA.JP', - 'TAKATORI.NARA.JP', - 'TAWARAMOTO.NARA.JP', - 'TENKAWA.NARA.JP', - 'TENRI.NARA.JP', - 'UDA.NARA.JP', - 'YAMATOKORIYAMA.NARA.JP', - 'YAMATOTAKADA.NARA.JP', - 'YAMAZOE.NARA.JP', - 'YOSHINO.NARA.JP', - 'AGA.NIIGATA.JP', - 'AGANO.NIIGATA.JP', - 'GOSEN.NIIGATA.JP', - 'ITOIGAWA.NIIGATA.JP', - 'IZUMOZAKI.NIIGATA.JP', - 'JOETSU.NIIGATA.JP', - 'KAMO.NIIGATA.JP', - 'KARIWA.NIIGATA.JP', - 'KASHIWAZAKI.NIIGATA.JP', - 'MINAMIUONUMA.NIIGATA.JP', - 'MITSUKE.NIIGATA.JP', - 'MUIKA.NIIGATA.JP', - 'MURAKAMI.NIIGATA.JP', - 'MYOKO.NIIGATA.JP', - 'NAGAOKA.NIIGATA.JP', - 'NIIGATA.NIIGATA.JP', - 'OJIYA.NIIGATA.JP', - 'OMI.NIIGATA.JP', - 'SADO.NIIGATA.JP', - 'SANJO.NIIGATA.JP', - 'SEIRO.NIIGATA.JP', - 'SEIROU.NIIGATA.JP', - 'SEKIKAWA.NIIGATA.JP', - 'SHIBATA.NIIGATA.JP', - 'TAGAMI.NIIGATA.JP', - 'TAINAI.NIIGATA.JP', - 'TOCHIO.NIIGATA.JP', - 'TOKAMACHI.NIIGATA.JP', - 'TSUBAME.NIIGATA.JP', - 'TSUNAN.NIIGATA.JP', - 'UONUMA.NIIGATA.JP', - 'YAHIKO.NIIGATA.JP', - 'YOITA.NIIGATA.JP', - 'YUZAWA.NIIGATA.JP', - 'BEPPU.OITA.JP', - 'BUNGOONO.OITA.JP', - 'BUNGOTAKADA.OITA.JP', - 'HASAMA.OITA.JP', - 'HIJI.OITA.JP', - 'HIMESHIMA.OITA.JP', - 'HITA.OITA.JP', - 'KAMITSUE.OITA.JP', - 'KOKONOE.OITA.JP', - 'KUJU.OITA.JP', - 'KUNISAKI.OITA.JP', - 'KUSU.OITA.JP', - 'OITA.OITA.JP', - 'SAIKI.OITA.JP', - 'TAKETA.OITA.JP', - 'TSUKUMI.OITA.JP', - 'USA.OITA.JP', - 'USUKI.OITA.JP', - 'YUFU.OITA.JP', - 'AKAIWA.OKAYAMA.JP', - 'ASAKUCHI.OKAYAMA.JP', - 'BIZEN.OKAYAMA.JP', - 'HAYASHIMA.OKAYAMA.JP', - 'IBARA.OKAYAMA.JP', - 'KAGAMINO.OKAYAMA.JP', - 'KASAOKA.OKAYAMA.JP', - 'KIBICHUO.OKAYAMA.JP', - 'KUMENAN.OKAYAMA.JP', - 'KURASHIKI.OKAYAMA.JP', - 'MANIWA.OKAYAMA.JP', - 'MISAKI.OKAYAMA.JP', - 'NAGI.OKAYAMA.JP', - 'NIIMI.OKAYAMA.JP', - 'NISHIAWAKURA.OKAYAMA.JP', - 'OKAYAMA.OKAYAMA.JP', - 'SATOSHO.OKAYAMA.JP', - 'SETOUCHI.OKAYAMA.JP', - 'SHINJO.OKAYAMA.JP', - 'SHOO.OKAYAMA.JP', - 'SOJA.OKAYAMA.JP', - 'TAKAHASHI.OKAYAMA.JP', - 'TAMANO.OKAYAMA.JP', - 'TSUYAMA.OKAYAMA.JP', - 'WAKE.OKAYAMA.JP', - 'YAKAGE.OKAYAMA.JP', - 'AGUNI.OKINAWA.JP', - 'GINOWAN.OKINAWA.JP', - 'GINOZA.OKINAWA.JP', - 'GUSHIKAMI.OKINAWA.JP', - 'HAEBARU.OKINAWA.JP', - 'HIGASHI.OKINAWA.JP', - 'HIRARA.OKINAWA.JP', - 'IHEYA.OKINAWA.JP', - 'ISHIGAKI.OKINAWA.JP', - 'ISHIKAWA.OKINAWA.JP', - 'ITOMAN.OKINAWA.JP', - 'IZENA.OKINAWA.JP', - 'KADENA.OKINAWA.JP', - 'KIN.OKINAWA.JP', - 'KITADAITO.OKINAWA.JP', - 'KITANAKAGUSUKU.OKINAWA.JP', - 'KUMEJIMA.OKINAWA.JP', - 'KUNIGAMI.OKINAWA.JP', - 'MINAMIDAITO.OKINAWA.JP', - 'MOTOBU.OKINAWA.JP', - 'NAGO.OKINAWA.JP', - 'NAHA.OKINAWA.JP', - 'NAKAGUSUKU.OKINAWA.JP', - 'NAKIJIN.OKINAWA.JP', - 'NANJO.OKINAWA.JP', - 'NISHIHARA.OKINAWA.JP', - 'OGIMI.OKINAWA.JP', - 'OKINAWA.OKINAWA.JP', - 'ONNA.OKINAWA.JP', - 'SHIMOJI.OKINAWA.JP', - 'TAKETOMI.OKINAWA.JP', - 'TARAMA.OKINAWA.JP', - 'TOKASHIKI.OKINAWA.JP', - 'TOMIGUSUKU.OKINAWA.JP', - 'TONAKI.OKINAWA.JP', - 'URASOE.OKINAWA.JP', - 'URUMA.OKINAWA.JP', - 'YAESE.OKINAWA.JP', - 'YOMITAN.OKINAWA.JP', - 'YONABARU.OKINAWA.JP', - 'YONAGUNI.OKINAWA.JP', - 'ZAMAMI.OKINAWA.JP', - 'ABENO.OSAKA.JP', - 'CHIHAYAAKASAKA.OSAKA.JP', - 'CHUO.OSAKA.JP', - 'DAITO.OSAKA.JP', - 'FUJIIDERA.OSAKA.JP', - 'HABIKINO.OSAKA.JP', - 'HANNAN.OSAKA.JP', - 'HIGASHIOSAKA.OSAKA.JP', - 'HIGASHISUMIYOSHI.OSAKA.JP', - 'HIGASHIYODOGAWA.OSAKA.JP', - 'HIRAKATA.OSAKA.JP', - 'IBARAKI.OSAKA.JP', - 'IKEDA.OSAKA.JP', - 'IZUMI.OSAKA.JP', - 'IZUMIOTSU.OSAKA.JP', - 'IZUMISANO.OSAKA.JP', - 'KADOMA.OSAKA.JP', - 'KAIZUKA.OSAKA.JP', - 'KANAN.OSAKA.JP', - 'KASHIWARA.OSAKA.JP', - 'KATANO.OSAKA.JP', - 'KAWACHINAGANO.OSAKA.JP', - 'KISHIWADA.OSAKA.JP', - 'KITA.OSAKA.JP', - 'KUMATORI.OSAKA.JP', - 'MATSUBARA.OSAKA.JP', - 'MINATO.OSAKA.JP', - 'MINOH.OSAKA.JP', - 'MISAKI.OSAKA.JP', - 'MORIGUCHI.OSAKA.JP', - 'NEYAGAWA.OSAKA.JP', - 'NISHI.OSAKA.JP', - 'NOSE.OSAKA.JP', - 'OSAKASAYAMA.OSAKA.JP', - 'SAKAI.OSAKA.JP', - 'SAYAMA.OSAKA.JP', - 'SENNAN.OSAKA.JP', - 'SETTSU.OSAKA.JP', - 'SHIJONAWATE.OSAKA.JP', - 'SHIMAMOTO.OSAKA.JP', - 'SUITA.OSAKA.JP', - 'TADAOKA.OSAKA.JP', - 'TAISHI.OSAKA.JP', - 'TAJIRI.OSAKA.JP', - 'TAKAISHI.OSAKA.JP', - 'TAKATSUKI.OSAKA.JP', - 'TONDABAYASHI.OSAKA.JP', - 'TOYONAKA.OSAKA.JP', - 'TOYONO.OSAKA.JP', - 'YAO.OSAKA.JP', - 'ARIAKE.SAGA.JP', - 'ARITA.SAGA.JP', - 'FUKUDOMI.SAGA.JP', - 'GENKAI.SAGA.JP', - 'HAMATAMA.SAGA.JP', - 'HIZEN.SAGA.JP', - 'IMARI.SAGA.JP', - 'KAMIMINE.SAGA.JP', - 'KANZAKI.SAGA.JP', - 'KARATSU.SAGA.JP', - 'KASHIMA.SAGA.JP', - 'KITAGATA.SAGA.JP', - 'KITAHATA.SAGA.JP', - 'KIYAMA.SAGA.JP', - 'KOUHOKU.SAGA.JP', - 'KYURAGI.SAGA.JP', - 'NISHIARITA.SAGA.JP', - 'OGI.SAGA.JP', - 'OMACHI.SAGA.JP', - 'OUCHI.SAGA.JP', - 'SAGA.SAGA.JP', - 'SHIROISHI.SAGA.JP', - 'TAKU.SAGA.JP', - 'TARA.SAGA.JP', - 'TOSU.SAGA.JP', - 'YOSHINOGARI.SAGA.JP', - 'ARAKAWA.SAITAMA.JP', - 'ASAKA.SAITAMA.JP', - 'CHICHIBU.SAITAMA.JP', - 'FUJIMI.SAITAMA.JP', - 'FUJIMINO.SAITAMA.JP', - 'FUKAYA.SAITAMA.JP', - 'HANNO.SAITAMA.JP', - 'HANYU.SAITAMA.JP', - 'HASUDA.SAITAMA.JP', - 'HATOGAYA.SAITAMA.JP', - 'HATOYAMA.SAITAMA.JP', - 'HIDAKA.SAITAMA.JP', - 'HIGASHICHICHIBU.SAITAMA.JP', - 'HIGASHIMATSUYAMA.SAITAMA.JP', - 'HONJO.SAITAMA.JP', - 'INA.SAITAMA.JP', - 'IRUMA.SAITAMA.JP', - 'IWATSUKI.SAITAMA.JP', - 'KAMIIZUMI.SAITAMA.JP', - 'KAMIKAWA.SAITAMA.JP', - 'KAMISATO.SAITAMA.JP', - 'KASUKABE.SAITAMA.JP', - 'KAWAGOE.SAITAMA.JP', - 'KAWAGUCHI.SAITAMA.JP', - 'KAWAJIMA.SAITAMA.JP', - 'KAZO.SAITAMA.JP', - 'KITAMOTO.SAITAMA.JP', - 'KOSHIGAYA.SAITAMA.JP', - 'KOUNOSU.SAITAMA.JP', - 'KUKI.SAITAMA.JP', - 'KUMAGAYA.SAITAMA.JP', - 'MATSUBUSHI.SAITAMA.JP', - 'MINANO.SAITAMA.JP', - 'MISATO.SAITAMA.JP', - 'MIYASHIRO.SAITAMA.JP', - 'MIYOSHI.SAITAMA.JP', - 'MOROYAMA.SAITAMA.JP', - 'NAGATORO.SAITAMA.JP', - 'NAMEGAWA.SAITAMA.JP', - 'NIIZA.SAITAMA.JP', - 'OGANO.SAITAMA.JP', - 'OGAWA.SAITAMA.JP', - 'OGOSE.SAITAMA.JP', - 'OKEGAWA.SAITAMA.JP', - 'OMIYA.SAITAMA.JP', - 'OTAKI.SAITAMA.JP', - 'RANZAN.SAITAMA.JP', - 'RYOKAMI.SAITAMA.JP', - 'SAITAMA.SAITAMA.JP', - 'SAKADO.SAITAMA.JP', - 'SATTE.SAITAMA.JP', - 'SAYAMA.SAITAMA.JP', - 'SHIKI.SAITAMA.JP', - 'SHIRAOKA.SAITAMA.JP', - 'SOKA.SAITAMA.JP', - 'SUGITO.SAITAMA.JP', - 'TODA.SAITAMA.JP', - 'TOKIGAWA.SAITAMA.JP', - 'TOKOROZAWA.SAITAMA.JP', - 'TSURUGASHIMA.SAITAMA.JP', - 'URAWA.SAITAMA.JP', - 'WARABI.SAITAMA.JP', - 'YASHIO.SAITAMA.JP', - 'YOKOZE.SAITAMA.JP', - 'YONO.SAITAMA.JP', - 'YORII.SAITAMA.JP', - 'YOSHIDA.SAITAMA.JP', - 'YOSHIKAWA.SAITAMA.JP', - 'YOSHIMI.SAITAMA.JP', - 'AISHO.SHIGA.JP', - 'GAMO.SHIGA.JP', - 'HIGASHIOMI.SHIGA.JP', - 'HIKONE.SHIGA.JP', - 'KOKA.SHIGA.JP', - 'KONAN.SHIGA.JP', - 'KOSEI.SHIGA.JP', - 'KOTO.SHIGA.JP', - 'KUSATSU.SHIGA.JP', - 'MAIBARA.SHIGA.JP', - 'MORIYAMA.SHIGA.JP', - 'NAGAHAMA.SHIGA.JP', - 'NISHIAZAI.SHIGA.JP', - 'NOTOGAWA.SHIGA.JP', - 'OMIHACHIMAN.SHIGA.JP', - 'OTSU.SHIGA.JP', - 'RITTO.SHIGA.JP', - 'RYUOH.SHIGA.JP', - 'TAKASHIMA.SHIGA.JP', - 'TAKATSUKI.SHIGA.JP', - 'TORAHIME.SHIGA.JP', - 'TOYOSATO.SHIGA.JP', - 'YASU.SHIGA.JP', - 'AKAGI.SHIMANE.JP', - 'AMA.SHIMANE.JP', - 'GOTSU.SHIMANE.JP', - 'HAMADA.SHIMANE.JP', - 'HIGASHIIZUMO.SHIMANE.JP', - 'HIKAWA.SHIMANE.JP', - 'HIKIMI.SHIMANE.JP', - 'IZUMO.SHIMANE.JP', - 'KAKINOKI.SHIMANE.JP', - 'MASUDA.SHIMANE.JP', - 'MATSUE.SHIMANE.JP', - 'MISATO.SHIMANE.JP', - 'NISHINOSHIMA.SHIMANE.JP', - 'OHDA.SHIMANE.JP', - 'OKINOSHIMA.SHIMANE.JP', - 'OKUIZUMO.SHIMANE.JP', - 'SHIMANE.SHIMANE.JP', - 'TAMAYU.SHIMANE.JP', - 'TSUWANO.SHIMANE.JP', - 'UNNAN.SHIMANE.JP', - 'YAKUMO.SHIMANE.JP', - 'YASUGI.SHIMANE.JP', - 'YATSUKA.SHIMANE.JP', - 'ARAI.SHIZUOKA.JP', - 'ATAMI.SHIZUOKA.JP', - 'FUJI.SHIZUOKA.JP', - 'FUJIEDA.SHIZUOKA.JP', - 'FUJIKAWA.SHIZUOKA.JP', - 'FUJINOMIYA.SHIZUOKA.JP', - 'FUKUROI.SHIZUOKA.JP', - 'GOTEMBA.SHIZUOKA.JP', - 'HAIBARA.SHIZUOKA.JP', - 'HAMAMATSU.SHIZUOKA.JP', - 'HIGASHIIZU.SHIZUOKA.JP', - 'ITO.SHIZUOKA.JP', - 'IWATA.SHIZUOKA.JP', - 'IZU.SHIZUOKA.JP', - 'IZUNOKUNI.SHIZUOKA.JP', - 'KAKEGAWA.SHIZUOKA.JP', - 'KANNAMI.SHIZUOKA.JP', - 'KAWANEHON.SHIZUOKA.JP', - 'KAWAZU.SHIZUOKA.JP', - 'KIKUGAWA.SHIZUOKA.JP', - 'KOSAI.SHIZUOKA.JP', - 'MAKINOHARA.SHIZUOKA.JP', - 'MATSUZAKI.SHIZUOKA.JP', - 'MINAMIIZU.SHIZUOKA.JP', - 'MISHIMA.SHIZUOKA.JP', - 'MORIMACHI.SHIZUOKA.JP', - 'NISHIIZU.SHIZUOKA.JP', - 'NUMAZU.SHIZUOKA.JP', - 'OMAEZAKI.SHIZUOKA.JP', - 'SHIMADA.SHIZUOKA.JP', - 'SHIMIZU.SHIZUOKA.JP', - 'SHIMODA.SHIZUOKA.JP', - 'SHIZUOKA.SHIZUOKA.JP', - 'SUSONO.SHIZUOKA.JP', - 'YAIZU.SHIZUOKA.JP', - 'YOSHIDA.SHIZUOKA.JP', - 'ASHIKAGA.TOCHIGI.JP', - 'BATO.TOCHIGI.JP', - 'HAGA.TOCHIGI.JP', - 'ICHIKAI.TOCHIGI.JP', - 'IWAFUNE.TOCHIGI.JP', - 'KAMINOKAWA.TOCHIGI.JP', - 'KANUMA.TOCHIGI.JP', - 'KARASUYAMA.TOCHIGI.JP', - 'KUROISO.TOCHIGI.JP', - 'MASHIKO.TOCHIGI.JP', - 'MIBU.TOCHIGI.JP', - 'MOKA.TOCHIGI.JP', - 'MOTEGI.TOCHIGI.JP', - 'NASU.TOCHIGI.JP', - 'NASUSHIOBARA.TOCHIGI.JP', - 'NIKKO.TOCHIGI.JP', - 'NISHIKATA.TOCHIGI.JP', - 'NOGI.TOCHIGI.JP', - 'OHIRA.TOCHIGI.JP', - 'OHTAWARA.TOCHIGI.JP', - 'OYAMA.TOCHIGI.JP', - 'SAKURA.TOCHIGI.JP', - 'SANO.TOCHIGI.JP', - 'SHIMOTSUKE.TOCHIGI.JP', - 'SHIOYA.TOCHIGI.JP', - 'TAKANEZAWA.TOCHIGI.JP', - 'TOCHIGI.TOCHIGI.JP', - 'TSUGA.TOCHIGI.JP', - 'UJIIE.TOCHIGI.JP', - 'UTSUNOMIYA.TOCHIGI.JP', - 'YAITA.TOCHIGI.JP', - 'AIZUMI.TOKUSHIMA.JP', - 'ANAN.TOKUSHIMA.JP', - 'ICHIBA.TOKUSHIMA.JP', - 'ITANO.TOKUSHIMA.JP', - 'KAINAN.TOKUSHIMA.JP', - 'KOMATSUSHIMA.TOKUSHIMA.JP', - 'MATSUSHIGE.TOKUSHIMA.JP', - 'MIMA.TOKUSHIMA.JP', - 'MINAMI.TOKUSHIMA.JP', - 'MIYOSHI.TOKUSHIMA.JP', - 'MUGI.TOKUSHIMA.JP', - 'NAKAGAWA.TOKUSHIMA.JP', - 'NARUTO.TOKUSHIMA.JP', - 'SANAGOCHI.TOKUSHIMA.JP', - 'SHISHIKUI.TOKUSHIMA.JP', - 'TOKUSHIMA.TOKUSHIMA.JP', - 'WAJIKI.TOKUSHIMA.JP', - 'ADACHI.TOKYO.JP', - 'AKIRUNO.TOKYO.JP', - 'AKISHIMA.TOKYO.JP', - 'AOGASHIMA.TOKYO.JP', - 'ARAKAWA.TOKYO.JP', - 'BUNKYO.TOKYO.JP', - 'CHIYODA.TOKYO.JP', - 'CHOFU.TOKYO.JP', - 'CHUO.TOKYO.JP', - 'EDOGAWA.TOKYO.JP', - 'FUCHU.TOKYO.JP', - 'FUSSA.TOKYO.JP', - 'HACHIJO.TOKYO.JP', - 'HACHIOJI.TOKYO.JP', - 'HAMURA.TOKYO.JP', - 'HIGASHIKURUME.TOKYO.JP', - 'HIGASHIMURAYAMA.TOKYO.JP', - 'HIGASHIYAMATO.TOKYO.JP', - 'HINO.TOKYO.JP', - 'HINODE.TOKYO.JP', - 'HINOHARA.TOKYO.JP', - 'INAGI.TOKYO.JP', - 'ITABASHI.TOKYO.JP', - 'KATSUSHIKA.TOKYO.JP', - 'KITA.TOKYO.JP', - 'KIYOSE.TOKYO.JP', - 'KODAIRA.TOKYO.JP', - 'KOGANEI.TOKYO.JP', - 'KOKUBUNJI.TOKYO.JP', - 'KOMAE.TOKYO.JP', - 'KOTO.TOKYO.JP', - 'KOUZUSHIMA.TOKYO.JP', - 'KUNITACHI.TOKYO.JP', - 'MACHIDA.TOKYO.JP', - 'MEGURO.TOKYO.JP', - 'MINATO.TOKYO.JP', - 'MITAKA.TOKYO.JP', - 'MIZUHO.TOKYO.JP', - 'MUSASHIMURAYAMA.TOKYO.JP', - 'MUSASHINO.TOKYO.JP', - 'NAKANO.TOKYO.JP', - 'NERIMA.TOKYO.JP', - 'OGASAWARA.TOKYO.JP', - 'OKUTAMA.TOKYO.JP', - 'OME.TOKYO.JP', - 'OSHIMA.TOKYO.JP', - 'OTA.TOKYO.JP', - 'SETAGAYA.TOKYO.JP', - 'SHIBUYA.TOKYO.JP', - 'SHINAGAWA.TOKYO.JP', - 'SHINJUKU.TOKYO.JP', - 'SUGINAMI.TOKYO.JP', - 'SUMIDA.TOKYO.JP', - 'TACHIKAWA.TOKYO.JP', - 'TAITO.TOKYO.JP', - 'TAMA.TOKYO.JP', - 'TOSHIMA.TOKYO.JP', - 'CHIZU.TOTTORI.JP', - 'HINO.TOTTORI.JP', - 'KAWAHARA.TOTTORI.JP', - 'KOGE.TOTTORI.JP', - 'KOTOURA.TOTTORI.JP', - 'MISASA.TOTTORI.JP', - 'NANBU.TOTTORI.JP', - 'NICHINAN.TOTTORI.JP', - 'SAKAIMINATO.TOTTORI.JP', - 'TOTTORI.TOTTORI.JP', - 'WAKASA.TOTTORI.JP', - 'YAZU.TOTTORI.JP', - 'YONAGO.TOTTORI.JP', - 'ASAHI.TOYAMA.JP', - 'FUCHU.TOYAMA.JP', - 'FUKUMITSU.TOYAMA.JP', - 'FUNAHASHI.TOYAMA.JP', - 'HIMI.TOYAMA.JP', - 'IMIZU.TOYAMA.JP', - 'INAMI.TOYAMA.JP', - 'JOHANA.TOYAMA.JP', - 'KAMIICHI.TOYAMA.JP', - 'KUROBE.TOYAMA.JP', - 'NAKANIIKAWA.TOYAMA.JP', - 'NAMERIKAWA.TOYAMA.JP', - 'NANTO.TOYAMA.JP', - 'NYUZEN.TOYAMA.JP', - 'OYABE.TOYAMA.JP', - 'TAIRA.TOYAMA.JP', - 'TAKAOKA.TOYAMA.JP', - 'TATEYAMA.TOYAMA.JP', - 'TOGA.TOYAMA.JP', - 'TONAMI.TOYAMA.JP', - 'TOYAMA.TOYAMA.JP', - 'UNAZUKI.TOYAMA.JP', - 'UOZU.TOYAMA.JP', - 'YAMADA.TOYAMA.JP', - 'ARIDA.WAKAYAMA.JP', - 'ARIDAGAWA.WAKAYAMA.JP', - 'GOBO.WAKAYAMA.JP', - 'HASHIMOTO.WAKAYAMA.JP', - 'HIDAKA.WAKAYAMA.JP', - 'HIROGAWA.WAKAYAMA.JP', - 'INAMI.WAKAYAMA.JP', - 'IWADE.WAKAYAMA.JP', - 'KAINAN.WAKAYAMA.JP', - 'KAMITONDA.WAKAYAMA.JP', - 'KATSURAGI.WAKAYAMA.JP', - 'KIMINO.WAKAYAMA.JP', - 'KINOKAWA.WAKAYAMA.JP', - 'KITAYAMA.WAKAYAMA.JP', - 'KOYA.WAKAYAMA.JP', - 'KOZA.WAKAYAMA.JP', - 'KOZAGAWA.WAKAYAMA.JP', - 'KUDOYAMA.WAKAYAMA.JP', - 'KUSHIMOTO.WAKAYAMA.JP', - 'MIHAMA.WAKAYAMA.JP', - 'MISATO.WAKAYAMA.JP', - 'NACHIKATSUURA.WAKAYAMA.JP', - 'SHINGU.WAKAYAMA.JP', - 'SHIRAHAMA.WAKAYAMA.JP', - 'TAIJI.WAKAYAMA.JP', - 'TANABE.WAKAYAMA.JP', - 'WAKAYAMA.WAKAYAMA.JP', - 'YUASA.WAKAYAMA.JP', - 'YURA.WAKAYAMA.JP', - 'ASAHI.YAMAGATA.JP', - 'FUNAGATA.YAMAGATA.JP', - 'HIGASHINE.YAMAGATA.JP', - 'IIDE.YAMAGATA.JP', - 'KAHOKU.YAMAGATA.JP', - 'KAMINOYAMA.YAMAGATA.JP', - 'KANEYAMA.YAMAGATA.JP', - 'KAWANISHI.YAMAGATA.JP', - 'MAMUROGAWA.YAMAGATA.JP', - 'MIKAWA.YAMAGATA.JP', - 'MURAYAMA.YAMAGATA.JP', - 'NAGAI.YAMAGATA.JP', - 'NAKAYAMA.YAMAGATA.JP', - 'NANYO.YAMAGATA.JP', - 'NISHIKAWA.YAMAGATA.JP', - 'OBANAZAWA.YAMAGATA.JP', - 'OE.YAMAGATA.JP', - 'OGUNI.YAMAGATA.JP', - 'OHKURA.YAMAGATA.JP', - 'OISHIDA.YAMAGATA.JP', - 'SAGAE.YAMAGATA.JP', - 'SAKATA.YAMAGATA.JP', - 'SAKEGAWA.YAMAGATA.JP', - 'SHINJO.YAMAGATA.JP', - 'SHIRATAKA.YAMAGATA.JP', - 'SHONAI.YAMAGATA.JP', - 'TAKAHATA.YAMAGATA.JP', - 'TENDO.YAMAGATA.JP', - 'TOZAWA.YAMAGATA.JP', - 'TSURUOKA.YAMAGATA.JP', - 'YAMAGATA.YAMAGATA.JP', - 'YAMANOBE.YAMAGATA.JP', - 'YONEZAWA.YAMAGATA.JP', - 'YUZA.YAMAGATA.JP', - 'ABU.YAMAGUCHI.JP', - 'HAGI.YAMAGUCHI.JP', - 'HIKARI.YAMAGUCHI.JP', - 'HOFU.YAMAGUCHI.JP', - 'IWAKUNI.YAMAGUCHI.JP', - 'KUDAMATSU.YAMAGUCHI.JP', - 'MITOU.YAMAGUCHI.JP', - 'NAGATO.YAMAGUCHI.JP', - 'OSHIMA.YAMAGUCHI.JP', - 'SHIMONOSEKI.YAMAGUCHI.JP', - 'SHUNAN.YAMAGUCHI.JP', - 'TABUSE.YAMAGUCHI.JP', - 'TOKUYAMA.YAMAGUCHI.JP', - 'TOYOTA.YAMAGUCHI.JP', - 'UBE.YAMAGUCHI.JP', - 'YUU.YAMAGUCHI.JP', - 'CHUO.YAMANASHI.JP', - 'DOSHI.YAMANASHI.JP', - 'FUEFUKI.YAMANASHI.JP', - 'FUJIKAWA.YAMANASHI.JP', - 'FUJIKAWAGUCHIKO.YAMANASHI.JP', - 'FUJIYOSHIDA.YAMANASHI.JP', - 'HAYAKAWA.YAMANASHI.JP', - 'HOKUTO.YAMANASHI.JP', - 'ICHIKAWAMISATO.YAMANASHI.JP', - 'KAI.YAMANASHI.JP', - 'KOFU.YAMANASHI.JP', - 'KOSHU.YAMANASHI.JP', - 'KOSUGE.YAMANASHI.JP', - 'MINAMI-ALPS.YAMANASHI.JP', - 'MINOBU.YAMANASHI.JP', - 'NAKAMICHI.YAMANASHI.JP', - 'NANBU.YAMANASHI.JP', - 'NARUSAWA.YAMANASHI.JP', - 'NIRASAKI.YAMANASHI.JP', - 'NISHIKATSURA.YAMANASHI.JP', - 'OSHINO.YAMANASHI.JP', - 'OTSUKI.YAMANASHI.JP', - 'SHOWA.YAMANASHI.JP', - 'TABAYAMA.YAMANASHI.JP', - 'TSURU.YAMANASHI.JP', - 'UENOHARA.YAMANASHI.JP', - 'YAMANAKAKO.YAMANASHI.JP', - 'YAMANASHI.YAMANASHI.JP', + 'exceptions' => [ + 'CITY.KAWASAKI.JP', + 'CITY.KITAKYUSHU.JP', + 'CITY.KOBE.JP', + 'CITY.NAGOYA.JP', + 'CITY.SAPPORO.JP', + 'CITY.SENDAI.JP', + 'CITY.YOKOHAMA.JP', + ], + 'rules' => [ + '0AM.JP', + '0G0.JP', + '0J0.JP', + '0T0.JP', + '2-D.JP', + 'ABASHIRI.HOKKAIDO.JP', + 'ABENO.OSAKA.JP', + 'ABIKO.CHIBA.JP', + 'ABIRA.HOKKAIDO.JP', + 'ABU.YAMAGUCHI.JP', + 'AC.JP', + 'ACHI.NAGANO.JP', + 'AD.JP', + 'ADACHI.TOKYO.JP', + 'AGA.NIIGATA.JP', + 'AGANO.NIIGATA.JP', + 'AGEMATSU.NAGANO.JP', + 'AGUNI.OKINAWA.JP', + 'AIBETSU.HOKKAIDO.JP', + 'AICHI.JP', + 'AIKAWA.KANAGAWA.JP', + 'AINAN.EHIME.JP', + 'AIOI.HYOGO.JP', + 'AISAI.AICHI.JP', + 'AISHO.SHIGA.JP', + 'AIZUBANGE.FUKUSHIMA.JP', + 'AIZUMI.TOKUSHIMA.JP', + 'AIZUMISATO.FUKUSHIMA.JP', + 'AIZUWAKAMATSU.FUKUSHIMA.JP', + 'AKABIRA.HOKKAIDO.JP', + 'AKAGI.SHIMANE.JP', + 'AKAIWA.OKAYAMA.JP', + 'AKASHI.HYOGO.JP', + 'AKI.KOCHI.JP', + 'AKIRUNO.TOKYO.JP', + 'AKISHIMA.TOKYO.JP', + 'AKITA.AKITA.JP', + 'AKITA.JP', + 'AKKESHI.HOKKAIDO.JP', + 'AKO.HYOGO.JP', + 'AKUNE.KAGOSHIMA.JP', + 'AMA.AICHI.JP', + 'AMA.SHIMANE.JP', + 'AMAGASAKI.HYOGO.JP', + 'AMAKUSA.KUMAMOTO.JP', + 'AMAMI.KAGOSHIMA.JP', + 'AMI.IBARAKI.JP', + 'ANAMIZU.ISHIKAWA.JP', + 'ANAN.NAGANO.JP', + 'ANAN.TOKUSHIMA.JP', + 'ANDO.NARA.JP', + 'ANGRY.JP', + 'ANJO.AICHI.JP', + 'ANNAKA.GUNMA.JP', + 'ANPACHI.GIFU.JP', + 'AOGAKI.HYOGO.JP', + 'AOGASHIMA.TOKYO.JP', + 'AOKI.NAGANO.JP', + 'AOMORI.AOMORI.JP', + 'AOMORI.JP', + 'ARAI.SHIZUOKA.JP', + 'ARAKAWA.SAITAMA.JP', + 'ARAKAWA.TOKYO.JP', + 'ARAO.KUMAMOTO.JP', + 'ARIAKE.SAGA.JP', + 'ARIDA.WAKAYAMA.JP', + 'ARIDAGAWA.WAKAYAMA.JP', + 'ARITA.SAGA.JP', + 'ASAGO.HYOGO.JP', + 'ASAHI.CHIBA.JP', + 'ASAHI.IBARAKI.JP', + 'ASAHI.MIE.JP', + 'ASAHI.NAGANO.JP', + 'ASAHI.TOYAMA.JP', + 'ASAHI.YAMAGATA.JP', + 'ASAHIKAWA.HOKKAIDO.JP', + 'ASAKA.SAITAMA.JP', + 'ASAKAWA.FUKUSHIMA.JP', + 'ASAKUCHI.OKAYAMA.JP', + 'ASAMINAMI.HIROSHIMA.JP', + 'ASHIBETSU.HOKKAIDO.JP', + 'ASHIKAGA.TOCHIGI.JP', + 'ASHIYA.FUKUOKA.JP', + 'ASHIYA.HYOGO.JP', + 'ASHORO.HOKKAIDO.JP', + 'ASO.KUMAMOTO.JP', + 'ASSABU.HOKKAIDO.JP', + 'ASUKE.AICHI.JP', + 'ATAMI.SHIZUOKA.JP', + 'ATSUGI.KANAGAWA.JP', + 'ATSUMA.HOKKAIDO.JP', + 'AWAJI.HYOGO.JP', + 'AYA.MIYAZAKI.JP', + 'AYABE.KYOTO.JP', + 'AYAGAWA.KAGAWA.JP', + 'AYASE.KANAGAWA.JP', + 'AZUMINO.NAGANO.JP', + 'BABYBLUE.JP', + 'BABYMILK.JP', + 'BACKDROP.JP', + 'BAMBINA.JP', + 'BANDAI.FUKUSHIMA.JP', + 'BANDO.IBARAKI.JP', + 'BATO.TOCHIGI.JP', + 'BEPPU.OITA.JP', + 'BIBAI.HOKKAIDO.JP', + 'BIEI.HOKKAIDO.JP', + 'BIFUKA.HOKKAIDO.JP', + 'BIHORO.HOKKAIDO.JP', + 'BIRATORI.HOKKAIDO.JP', + 'BITTER.JP', + 'BIZEN.OKAYAMA.JP', + 'BLUSH.JP', + 'BONA.JP', + 'BOO.JP', + 'BOY.JP', + 'BOYFRIEND.JP', + 'BUNGOONO.OITA.JP', + 'BUNGOTAKADA.OITA.JP', + 'BUNKYO.TOKYO.JP', + 'BUT.JP', + 'BUYSHOP.JP', + 'BUZEN.FUKUOKA.JP', + 'CANDYPOP.JP', + 'CAPOO.JP', + 'CATFOOD.JP', + 'CHEAP.JP', + 'CHIBA.JP', + 'CHICAPPA.JP', + 'CHICHIBU.SAITAMA.JP', + 'CHIGASAKI.KANAGAWA.JP', + 'CHIHAYAAKASAKA.OSAKA.JP', + 'CHIJIWA.NAGASAKI.JP', + 'CHIKUGO.FUKUOKA.JP', + 'CHIKUHO.FUKUOKA.JP', + 'CHIKUHOKU.NAGANO.JP', + 'CHIKUJO.FUKUOKA.JP', + 'CHIKUMA.NAGANO.JP', + 'CHIKUSEI.IBARAKI.JP', + 'CHIKUSHINO.FUKUOKA.JP', + 'CHIKUZEN.FUKUOKA.JP', + 'CHILLOUT.JP', + 'CHINO.NAGANO.JP', + 'CHIPPUBETSU.HOKKAIDO.JP', + 'CHIPS.JP', + 'CHIRYU.AICHI.JP', + 'CHITA.AICHI.JP', + 'CHITOSE.HOKKAIDO.JP', + 'CHIYODA.GUNMA.JP', + 'CHIYODA.TOKYO.JP', + 'CHIZU.TOTTORI.JP', + 'CHOFU.TOKYO.JP', + 'CHONAN.CHIBA.JP', + 'CHOSEI.CHIBA.JP', + 'CHOSHI.CHIBA.JP', + 'CHOWDER.JP', + 'CHOYO.KUMAMOTO.JP', + 'CHU.JP', + 'CHUO.CHIBA.JP', + 'CHUO.FUKUOKA.JP', + 'CHUO.OSAKA.JP', + 'CHUO.TOKYO.JP', + 'CHUO.YAMANASHI.JP', + 'CIAO.JP', + 'CO.JP', + 'COCOTTE.JP', + 'COOLBLOG.JP', + 'CRANKY.JP', + 'CRAP.JP', + 'CUTEGIRL.JP', + 'DAA.JP', + 'DAIGO.IBARAKI.JP', + 'DAISEN.AKITA.JP', + 'DAITO.OSAKA.JP', + 'DAIWA.HIROSHIMA.JP', + 'DATE.FUKUSHIMA.JP', + 'DATE.HOKKAIDO.JP', + 'DAYNIGHT.JP', + 'DAZAIFU.FUKUOKA.JP', + 'DECA.JP', + 'DECI.JP', + 'DIGICK.JP', + 'DOSHI.YAMANASHI.JP', + 'EBETSU.HOKKAIDO.JP', + 'EBINA.KANAGAWA.JP', + 'EBINO.MIYAZAKI.JP', + 'ECHIZEN.FUKUI.JP', + 'ED.JP', + 'EDOGAWA.TOKYO.JP', + 'EEK.JP', + 'EGOISM.JP', + 'EHIME.JP', + 'EIHEIJI.FUKUI.JP', + 'EMBETSU.HOKKAIDO.JP', + 'ENA.GIFU.JP', + 'ENIWA.HOKKAIDO.JP', + 'ERIMO.HOKKAIDO.JP', + 'ESAN.HOKKAIDO.JP', + 'ESASHI.HOKKAIDO.JP', + 'ETAJIMA.HIROSHIMA.JP', + 'FAKEFUR.JP', + 'FASHIONSTORE.JP', + 'FEM.JP', + 'FLIER.JP', + 'FLOP.JP', + 'FLOPPY.JP', + 'FOOL.JP', + 'FRENCHKISS.JP', + 'FUCHU.HIROSHIMA.JP', + 'FUCHU.TOKYO.JP', + 'FUCHU.TOYAMA.JP', + 'FUDAI.IWATE.JP', + 'FUEFUKI.YAMANASHI.JP', + 'FUJI.SHIZUOKA.JP', + 'FUJIEDA.SHIZUOKA.JP', + 'FUJIIDERA.OSAKA.JP', + 'FUJIKAWA.SHIZUOKA.JP', + 'FUJIKAWA.YAMANASHI.JP', + 'FUJIKAWAGUCHIKO.YAMANASHI.JP', + 'FUJIMI.NAGANO.JP', + 'FUJIMI.SAITAMA.JP', + 'FUJIMINO.SAITAMA.JP', + 'FUJINOMIYA.SHIZUOKA.JP', + 'FUJIOKA.GUNMA.JP', + 'FUJISATO.AKITA.JP', + 'FUJISAWA.IWATE.JP', + 'FUJISAWA.KANAGAWA.JP', + 'FUJISHIRO.IBARAKI.JP', + 'FUJIYOSHIDA.YAMANASHI.JP', + 'FUKAGAWA.HOKKAIDO.JP', + 'FUKAYA.SAITAMA.JP', + 'FUKUCHI.FUKUOKA.JP', + 'FUKUCHIYAMA.KYOTO.JP', + 'FUKUDOMI.SAGA.JP', + 'FUKUI.FUKUI.JP', + 'FUKUI.JP', + 'FUKUMITSU.TOYAMA.JP', + 'FUKUOKA.JP', + 'FUKUROI.SHIZUOKA.JP', + 'FUKUSAKI.HYOGO.JP', + 'FUKUSHIMA.FUKUSHIMA.JP', + 'FUKUSHIMA.HOKKAIDO.JP', + 'FUKUSHIMA.JP', + 'FUKUYAMA.HIROSHIMA.JP', + 'FUNABASHI.CHIBA.JP', + 'FUNAGATA.YAMAGATA.JP', + 'FUNAHASHI.TOYAMA.JP', + 'FURANO.HOKKAIDO.JP', + 'FURUBIRA.HOKKAIDO.JP', + 'FURUDONO.FUKUSHIMA.JP', + 'FURUKAWA.MIYAGI.JP', + 'FUSO.AICHI.JP', + 'FUSSA.TOKYO.JP', + 'FUTABA.FUKUSHIMA.JP', + 'FUTSU.NAGASAKI.JP', + 'FUTTSU.CHIBA.JP', + 'GAMAGORI.AICHI.JP', + 'GAMO.SHIGA.JP', + 'GEHIRN.NE.JP', + 'GEISEI.KOCHI.JP', + 'GENKAI.SAGA.JP', + 'GIFU.GIFU.JP', + 'GIFU.JP', + 'GINAN.GIFU.JP', + 'GINOWAN.OKINAWA.JP', + 'GINOZA.OKINAWA.JP', + 'GIRLFRIEND.JP', + 'GIRLY.JP', + 'GLOOMY.JP', + 'GO.JP', + 'GOBO.WAKAYAMA.JP', + 'GODO.GIFU.JP', + 'GOJOME.AKITA.JP', + 'GOKASE.MIYAZAKI.JP', + 'GONNA.JP', + 'GONOHE.AOMORI.JP', + 'GOSE.NARA.JP', + 'GOSEN.NIIGATA.JP', + 'GOSHIKI.HYOGO.JP', + 'GOTEMBA.SHIZUOKA.JP', + 'GOTO.NAGASAKI.JP', + 'GOTSU.SHIMANE.JP', + 'GR.JP', + 'GREATER.JP', + 'GUJO.GIFU.JP', + 'GUNMA.JP', + 'GUSHIKAMI.OKINAWA.JP', + 'GYOKUTO.KUMAMOTO.JP', + 'HABIKINO.OSAKA.JP', + 'HABORO.HOKKAIDO.JP', + 'HACCA.JP', + 'HACHIJO.TOKYO.JP', + 'HACHINOHE.AOMORI.JP', + 'HACHIOJI.TOKYO.JP', + 'HACHIROGATA.AKITA.JP', + 'HADANO.KANAGAWA.JP', + 'HAEBARU.OKINAWA.JP', + 'HAGA.TOCHIGI.JP', + 'HAGI.YAMAGUCHI.JP', + 'HAIBARA.SHIZUOKA.JP', + 'HAKATA.FUKUOKA.JP', + 'HAKODATE.HOKKAIDO.JP', + 'HAKONE.KANAGAWA.JP', + 'HAKUBA.NAGANO.JP', + 'HAKUI.ISHIKAWA.JP', + 'HAKUSAN.ISHIKAWA.JP', + 'HALFMOON.JP', + 'HAMADA.SHIMANE.JP', + 'HAMAMATSU.SHIZUOKA.JP', + 'HAMATAMA.SAGA.JP', + 'HAMATONBETSU.HOKKAIDO.JP', + 'HAMURA.TOKYO.JP', + 'HANAMAKI.IWATE.JP', + 'HANAMIGAWA.CHIBA.JP', + 'HANAWA.FUKUSHIMA.JP', + 'HANDA.AICHI.JP', + 'HANDCRAFTED.JP', + 'HANNAN.OSAKA.JP', + 'HANNO.SAITAMA.JP', + 'HANYU.SAITAMA.JP', + 'HAPPOU.AKITA.JP', + 'HARA.NAGANO.JP', + 'HARIMA.HYOGO.JP', + 'HASAMA.OITA.JP', + 'HASAMI.NAGASAKI.JP', + 'HASHIKAMI.AOMORI.JP', + 'HASHIMA.GIFU.JP', + 'HASHIMOTO.WAKAYAMA.JP', + 'HASUDA.SAITAMA.JP', + 'HATEBLO.JP', + 'HATENABLOG.JP', + 'HATENADIARY.JP', + 'HATOGAYA.SAITAMA.JP', + 'HATOYAMA.SAITAMA.JP', + 'HATSUKAICHI.HIROSHIMA.JP', + 'HAYAKAWA.YAMANASHI.JP', + 'HAYASHIMA.OKAYAMA.JP', + 'HAZU.AICHI.JP', + 'HEAVY.JP', + 'HEGURI.NARA.JP', + 'HEKINAN.AICHI.JP', + 'HER.JP', + 'HICHISO.GIFU.JP', + 'HIDA.GIFU.JP', + 'HIDAKA.HOKKAIDO.JP', + 'HIDAKA.KOCHI.JP', + 'HIDAKA.SAITAMA.JP', + 'HIDAKA.WAKAYAMA.JP', + 'HIGASHI.FUKUOKA.JP', + 'HIGASHI.FUKUSHIMA.JP', + 'HIGASHI.OKINAWA.JP', + 'HIGASHIAGATSUMA.GUNMA.JP', + 'HIGASHICHICHIBU.SAITAMA.JP', + 'HIGASHIHIROSHIMA.HIROSHIMA.JP', + 'HIGASHIIZU.SHIZUOKA.JP', + 'HIGASHIIZUMO.SHIMANE.JP', + 'HIGASHIKAGAWA.KAGAWA.JP', + 'HIGASHIKAGURA.HOKKAIDO.JP', + 'HIGASHIKAWA.HOKKAIDO.JP', + 'HIGASHIKURUME.TOKYO.JP', + 'HIGASHIMATSUSHIMA.MIYAGI.JP', + 'HIGASHIMATSUYAMA.SAITAMA.JP', + 'HIGASHIMURAYAMA.TOKYO.JP', + 'HIGASHINARUSE.AKITA.JP', + 'HIGASHINE.YAMAGATA.JP', + 'HIGASHIOMI.SHIGA.JP', + 'HIGASHIOSAKA.OSAKA.JP', + 'HIGASHISHIRAKAWA.GIFU.JP', + 'HIGASHISUMIYOSHI.OSAKA.JP', + 'HIGASHITSUNO.KOCHI.JP', + 'HIGASHIURA.AICHI.JP', + 'HIGASHIYAMA.KYOTO.JP', + 'HIGASHIYAMATO.TOKYO.JP', + 'HIGASHIYODOGAWA.OSAKA.JP', + 'HIGASHIYOSHINO.NARA.JP', + 'HIHO.JP', + 'HIJI.OITA.JP', + 'HIKARI.YAMAGUCHI.JP', + 'HIKAWA.SHIMANE.JP', + 'HIKIMI.SHIMANE.JP', + 'HIKONE.SHIGA.JP', + 'HIMEJI.HYOGO.JP', + 'HIMESHIMA.OITA.JP', + 'HIMI.TOYAMA.JP', + 'HINO.TOKYO.JP', + 'HINO.TOTTORI.JP', + 'HINODE.TOKYO.JP', + 'HINOHARA.TOKYO.JP', + 'HIOKI.KAGOSHIMA.JP', + 'HIPPY.JP', + 'HIRADO.NAGASAKI.JP', + 'HIRAIZUMI.IWATE.JP', + 'HIRAKATA.OSAKA.JP', + 'HIRANAI.AOMORI.JP', + 'HIRARA.OKINAWA.JP', + 'HIRATA.FUKUSHIMA.JP', + 'HIRATSUKA.KANAGAWA.JP', + 'HIRAYA.NAGANO.JP', + 'HIROGAWA.WAKAYAMA.JP', + 'HIROKAWA.FUKUOKA.JP', + 'HIRONO.FUKUSHIMA.JP', + 'HIRONO.IWATE.JP', + 'HIROO.HOKKAIDO.JP', + 'HIROSAKI.AOMORI.JP', + 'HIROSHIMA.JP', + 'HISAYAMA.FUKUOKA.JP', + 'HITA.OITA.JP', + 'HITACHI.IBARAKI.JP', + 'HITACHINAKA.IBARAKI.JP', + 'HITACHIOMIYA.IBARAKI.JP', + 'HITACHIOTA.IBARAKI.JP', + 'HIZEN.SAGA.JP', + 'HOFU.YAMAGUCHI.JP', + 'HOKKAIDO.JP', + 'HOKURYU.HOKKAIDO.JP', + 'HOKUTO.HOKKAIDO.JP', + 'HOKUTO.YAMANASHI.JP', + 'HOLY.JP', + 'HONAI.EHIME.JP', + 'HONBETSU.HOKKAIDO.JP', + 'HONGO.HIROSHIMA.JP', + 'HONJO.AKITA.JP', + 'HONJO.SAITAMA.JP', + 'HONJYO.AKITA.JP', + 'HOROKANAI.HOKKAIDO.JP', + 'HORONOBE.HOKKAIDO.JP', + 'HUNGRY.JP', + 'HYOGO.JP', + 'HYUGA.MIYAZAKI.JP', + 'IBARA.OKAYAMA.JP', + 'IBARAKI.IBARAKI.JP', + 'IBARAKI.JP', + 'IBARAKI.OSAKA.JP', + 'IBIGAWA.GIFU.JP', + 'ICHIBA.TOKUSHIMA.JP', + 'ICHIHARA.CHIBA.JP', + 'ICHIKAI.TOCHIGI.JP', + 'ICHIKAWA.CHIBA.JP', + 'ICHIKAWA.HYOGO.JP', + 'ICHIKAWAMISATO.YAMANASHI.JP', + 'ICHINOHE.IWATE.JP', + 'ICHINOMIYA.AICHI.JP', + 'ICHINOMIYA.CHIBA.JP', + 'ICHINOSEKI.IWATE.JP', + 'ICURUS.JP', + 'IDE.KYOTO.JP', + 'IHEYA.OKINAWA.JP', + 'IIDA.NAGANO.JP', + 'IIDE.YAMAGATA.JP', + 'IIJIMA.NAGANO.JP', + 'IITATE.FUKUSHIMA.JP', + 'IIYAMA.NAGANO.JP', + 'IIZUKA.FUKUOKA.JP', + 'IIZUNA.NAGANO.JP', + 'IKARUGA.NARA.JP', + 'IKATA.EHIME.JP', + 'IKAWA.AKITA.JP', + 'IKEDA.FUKUI.JP', + 'IKEDA.GIFU.JP', + 'IKEDA.HOKKAIDO.JP', + 'IKEDA.NAGANO.JP', + 'IKEDA.OSAKA.JP', + 'IKI.NAGASAKI.JP', + 'IKOMA.NARA.JP', + 'IKUSAKA.NAGANO.JP', + 'IMABARI.EHIME.JP', + 'IMAKANE.HOKKAIDO.JP', + 'IMARI.SAGA.JP', + 'IMIZU.TOYAMA.JP', + 'INA.IBARAKI.JP', + 'INA.NAGANO.JP', + 'INA.SAITAMA.JP', + 'INABE.MIE.JP', + 'INAGAWA.HYOGO.JP', + 'INAGI.TOKYO.JP', + 'INAMI.TOYAMA.JP', + 'INAMI.WAKAYAMA.JP', + 'INASHIKI.IBARAKI.JP', + 'INATSUKI.FUKUOKA.JP', + 'INAWASHIRO.FUKUSHIMA.JP', + 'INAZAWA.AICHI.JP', + 'INE.KYOTO.JP', + 'INO.KOCHI.JP', + 'INUYAMA.AICHI.JP', + 'INZAI.CHIBA.JP', + 'IRUMA.SAITAMA.JP', + 'ISA.KAGOSHIMA.JP', + 'ISAHAYA.NAGASAKI.JP', + 'ISE.MIE.JP', + 'ISEHARA.KANAGAWA.JP', + 'ISEN.KAGOSHIMA.JP', + 'ISESAKI.GUNMA.JP', + 'ISHIGAKI.OKINAWA.JP', + 'ISHIKARI.HOKKAIDO.JP', + 'ISHIKAWA.FUKUSHIMA.JP', + 'ISHIKAWA.JP', + 'ISHIKAWA.OKINAWA.JP', + 'ISHINOMAKI.MIYAGI.JP', + 'ISSHIKI.AICHI.JP', + 'ISUMI.CHIBA.JP', + 'ITABASHI.TOKYO.JP', + 'ITAKO.IBARAKI.JP', + 'ITAKURA.GUNMA.JP', + 'ITAMI.HYOGO.JP', + 'ITANO.TOKUSHIMA.JP', + 'ITAYANAGI.AOMORI.JP', + 'ITIGO.JP', + 'ITO.SHIZUOKA.JP', + 'ITOIGAWA.NIIGATA.JP', + 'ITOMAN.OKINAWA.JP', + 'IVORY.NE.JP', + 'IWADE.WAKAYAMA.JP', + 'IWAFUNE.TOCHIGI.JP', + 'IWAIZUMI.IWATE.JP', + 'IWAKI.FUKUSHIMA.JP', + 'IWAKUNI.YAMAGUCHI.JP', + 'IWAKURA.AICHI.JP', + 'IWAMA.IBARAKI.JP', + 'IWAMIZAWA.HOKKAIDO.JP', + 'IWANAI.HOKKAIDO.JP', + 'IWANUMA.MIYAGI.JP', + 'IWATA.SHIZUOKA.JP', + 'IWATE.IWATE.JP', + 'IWATE.JP', + 'IWATSUKI.SAITAMA.JP', + 'IYO.EHIME.JP', + 'IZENA.OKINAWA.JP', + 'IZU.SHIZUOKA.JP', + 'IZUMI.KAGOSHIMA.JP', + 'IZUMI.OSAKA.JP', + 'IZUMIOTSU.OSAKA.JP', + 'IZUMISANO.OSAKA.JP', + 'IZUMIZAKI.FUKUSHIMA.JP', + 'IZUMO.SHIMANE.JP', + 'IZUMOZAKI.NIIGATA.JP', + 'IZUNOKUNI.SHIZUOKA.JP', + 'JEEZ.JP', + 'JELLYBEAN.JP', + 'JINSEKIKOGEN.HIROSHIMA.JP', + 'JOBOJI.IWATE.JP', + 'JOETSU.NIIGATA.JP', + 'JOHANA.TOYAMA.JP', + 'JOSO.IBARAKI.JP', + 'JOYO.KYOTO.JP', + 'KADENA.OKINAWA.JP', + 'KADOGAWA.MIYAZAKI.JP', + 'KADOMA.OSAKA.JP', + 'KAGA.ISHIKAWA.JP', + 'KAGAMI.KOCHI.JP', + 'KAGAMIISHI.FUKUSHIMA.JP', + 'KAGAMINO.OKAYAMA.JP', + 'KAGAWA.JP', + 'KAGOSHIMA.JP', + 'KAGOSHIMA.KAGOSHIMA.JP', + 'KAHO.FUKUOKA.JP', + 'KAHOKU.ISHIKAWA.JP', + 'KAHOKU.YAMAGATA.JP', + 'KAI.YAMANASHI.JP', + 'KAINAN.TOKUSHIMA.JP', + 'KAINAN.WAKAYAMA.JP', + 'KAISEI.KANAGAWA.JP', + 'KAITA.HIROSHIMA.JP', + 'KAIZUKA.OSAKA.JP', + 'KAKAMIGAHARA.GIFU.JP', + 'KAKEGAWA.SHIZUOKA.JP', + 'KAKINOKI.SHIMANE.JP', + 'KAKOGAWA.HYOGO.JP', + 'KAKUDA.MIYAGI.JP', + 'KAMAGAYA.CHIBA.JP', + 'KAMAISHI.IWATE.JP', + 'KAMAKURA.KANAGAWA.JP', + 'KAMEOKA.KYOTO.JP', + 'KAMEYAMA.MIE.JP', + 'KAMI.KOCHI.JP', + 'KAMI.MIYAGI.JP', + 'KAMIAMAKUSA.KUMAMOTO.JP', + 'KAMIFURANO.HOKKAIDO.JP', + 'KAMIGORI.HYOGO.JP', + 'KAMIICHI.TOYAMA.JP', + 'KAMIIZUMI.SAITAMA.JP', + 'KAMIJIMA.EHIME.JP', + 'KAMIKAWA.HOKKAIDO.JP', + 'KAMIKAWA.HYOGO.JP', + 'KAMIKAWA.SAITAMA.JP', + 'KAMIKITAYAMA.NARA.JP', + 'KAMIKOANI.AKITA.JP', + 'KAMIMINE.SAGA.JP', + 'KAMINOKAWA.TOCHIGI.JP', + 'KAMINOYAMA.YAMAGATA.JP', + 'KAMIOKA.AKITA.JP', + 'KAMISATO.SAITAMA.JP', + 'KAMISHIHORO.HOKKAIDO.JP', + 'KAMISU.IBARAKI.JP', + 'KAMISUNAGAWA.HOKKAIDO.JP', + 'KAMITONDA.WAKAYAMA.JP', + 'KAMITSUE.OITA.JP', + 'KAMO.KYOTO.JP', + 'KAMO.NIIGATA.JP', + 'KAMOENAI.HOKKAIDO.JP', + 'KAMOGAWA.CHIBA.JP', + 'KANAGAWA.JP', + 'KANAN.OSAKA.JP', + 'KANAZAWA.ISHIKAWA.JP', + 'KANEGASAKI.IWATE.JP', + 'KANEYAMA.FUKUSHIMA.JP', + 'KANEYAMA.YAMAGATA.JP', + 'KANI.GIFU.JP', + 'KANIE.AICHI.JP', + 'KANMAKI.NARA.JP', + 'KANNA.GUNMA.JP', + 'KANNAMI.SHIZUOKA.JP', + 'KANONJI.KAGAWA.JP', + 'KANOYA.KAGOSHIMA.JP', + 'KANRA.GUNMA.JP', + 'KANUMA.TOCHIGI.JP', + 'KANZAKI.SAGA.JP', + 'KARASUYAMA.TOCHIGI.JP', + 'KARATSU.SAGA.JP', + 'KARIWA.NIIGATA.JP', + 'KARIYA.AICHI.JP', + 'KARUIZAWA.NAGANO.JP', + 'KARUMAI.IWATE.JP', + 'KASAHARA.GIFU.JP', + 'KASAI.HYOGO.JP', + 'KASAMA.IBARAKI.JP', + 'KASAMATSU.GIFU.JP', + 'KASAOKA.OKAYAMA.JP', + 'KASHIBA.NARA.JP', + 'KASHIHARA.NARA.JP', + 'KASHIMA.IBARAKI.JP', + 'KASHIMA.SAGA.JP', + 'KASHIWA.CHIBA.JP', + 'KASHIWARA.OSAKA.JP', + 'KASHIWAZAKI.NIIGATA.JP', + 'KASUGA.FUKUOKA.JP', + 'KASUGA.HYOGO.JP', + 'KASUGAI.AICHI.JP', + 'KASUKABE.SAITAMA.JP', + 'KASUMIGAURA.IBARAKI.JP', + 'KASUYA.FUKUOKA.JP', + 'KATAGAMI.AKITA.JP', + 'KATANO.OSAKA.JP', + 'KATASHINA.GUNMA.JP', + 'KATORI.CHIBA.JP', + 'KATSURAGI.NARA.JP', + 'KATSURAGI.WAKAYAMA.JP', + 'KATSUSHIKA.TOKYO.JP', + 'KATSUURA.CHIBA.JP', + 'KATSUYAMA.FUKUI.JP', + 'KAWABA.GUNMA.JP', + 'KAWACHINAGANO.OSAKA.JP', + 'KAWAGOE.MIE.JP', + 'KAWAGOE.SAITAMA.JP', + 'KAWAGUCHI.SAITAMA.JP', + 'KAWAHARA.TOTTORI.JP', + 'KAWAI.IWATE.JP', + 'KAWAI.NARA.JP', + 'KAWAIISHOP.JP', + 'KAWAJIMA.SAITAMA.JP', + 'KAWAKAMI.NAGANO.JP', + 'KAWAKAMI.NARA.JP', + 'KAWAKITA.ISHIKAWA.JP', + 'KAWAMATA.FUKUSHIMA.JP', + 'KAWAMINAMI.MIYAZAKI.JP', + 'KAWANABE.KAGOSHIMA.JP', + 'KAWANEHON.SHIZUOKA.JP', + 'KAWANISHI.HYOGO.JP', + 'KAWANISHI.NARA.JP', + 'KAWANISHI.YAMAGATA.JP', + 'KAWARA.FUKUOKA.JP', + 'KAWASAKI.MIYAGI.JP', + 'KAWATANA.NAGASAKI.JP', + 'KAWAUE.GIFU.JP', + 'KAWAZU.SHIZUOKA.JP', + 'KAYABE.HOKKAIDO.JP', + 'KAZO.SAITAMA.JP', + 'KAZUNO.AKITA.JP', + 'KEISEN.FUKUOKA.JP', + 'KEMBUCHI.HOKKAIDO.JP', + 'KIBICHUO.OKAYAMA.JP', + 'KIHO.MIE.JP', + 'KIHOKU.EHIME.JP', + 'KIJO.MIYAZAKI.JP', + 'KIKIRARA.JP', + 'KIKONAI.HOKKAIDO.JP', + 'KIKUCHI.KUMAMOTO.JP', + 'KIKUGAWA.SHIZUOKA.JP', + 'KILL.JP', + 'KILO.JP', + 'KIMINO.WAKAYAMA.JP', + 'KIMITSU.CHIBA.JP', + 'KIMOBETSU.HOKKAIDO.JP', + 'KIN.OKINAWA.JP', + 'KINKO.KAGOSHIMA.JP', + 'KINOKAWA.WAKAYAMA.JP', + 'KIRA.AICHI.JP', + 'KIRYU.GUNMA.JP', + 'KISARAZU.CHIBA.JP', + 'KISHIWADA.OSAKA.JP', + 'KISO.NAGANO.JP', + 'KISOFUKUSHIMA.NAGANO.JP', + 'KISOSAKI.MIE.JP', + 'KITA.KYOTO.JP', + 'KITA.OSAKA.JP', + 'KITA.TOKYO.JP', + 'KITAAIKI.NAGANO.JP', + 'KITAAKITA.AKITA.JP', + 'KITADAITO.OKINAWA.JP', + 'KITAGATA.GIFU.JP', + 'KITAGATA.SAGA.JP', + 'KITAGAWA.KOCHI.JP', + 'KITAGAWA.MIYAZAKI.JP', + 'KITAHATA.SAGA.JP', + 'KITAHIROSHIMA.HOKKAIDO.JP', + 'KITAKAMI.IWATE.JP', + 'KITAKATA.FUKUSHIMA.JP', + 'KITAKATA.MIYAZAKI.JP', + 'KITAMI.HOKKAIDO.JP', + 'KITAMOTO.SAITAMA.JP', + 'KITANAKAGUSUKU.OKINAWA.JP', + 'KITASHIOBARA.FUKUSHIMA.JP', + 'KITAURA.MIYAZAKI.JP', + 'KITAYAMA.WAKAYAMA.JP', + 'KIWA.MIE.JP', + 'KIYAMA.SAGA.JP', + 'KIYOKAWA.KANAGAWA.JP', + 'KIYOSATO.HOKKAIDO.JP', + 'KIYOSE.TOKYO.JP', + 'KIYOSU.AICHI.JP', + 'KIZU.KYOTO.JP', + 'KOBAYASHI.MIYAZAKI.JP', + 'KOCHI.JP', + 'KOCHI.KOCHI.JP', + 'KODAIRA.TOKYO.JP', + 'KOFU.YAMANASHI.JP', + 'KOGA.FUKUOKA.JP', + 'KOGA.IBARAKI.JP', + 'KOGANEI.TOKYO.JP', + 'KOGE.TOTTORI.JP', + 'KOKA.SHIGA.JP', + 'KOKONOE.OITA.JP', + 'KOKUBUNJI.TOKYO.JP', + 'KOMAE.TOKYO.JP', + 'KOMAGANE.NAGANO.JP', + 'KOMAKI.AICHI.JP', + 'KOMATSU.ISHIKAWA.JP', + 'KOMATSUSHIMA.TOKUSHIMA.JP', + 'KOMONO.MIE.JP', + 'KOMORO.NAGANO.JP', + 'KONAN.AICHI.JP', + 'KONAN.SHIGA.JP', + 'KOORI.FUKUSHIMA.JP', + 'KORIYAMA.FUKUSHIMA.JP', + 'KORYO.NARA.JP', + 'KOSAI.SHIZUOKA.JP', + 'KOSAKA.AKITA.JP', + 'KOSEI.SHIGA.JP', + 'KOSHIGAYA.SAITAMA.JP', + 'KOSHIMIZU.HOKKAIDO.JP', + 'KOSHU.YAMANASHI.JP', + 'KOSUGE.YAMANASHI.JP', + 'KOTA.AICHI.JP', + 'KOTO.SHIGA.JP', + 'KOTO.TOKYO.JP', + 'KOTOHIRA.KAGAWA.JP', + 'KOTOURA.TOTTORI.JP', + 'KOUHOKU.SAGA.JP', + 'KOUNOSU.SAITAMA.JP', + 'KOUYAMA.KAGOSHIMA.JP', + 'KOUZUSHIMA.TOKYO.JP', + 'KOYA.WAKAYAMA.JP', + 'KOZA.WAKAYAMA.JP', + 'KOZAGAWA.WAKAYAMA.JP', + 'KOZAKI.CHIBA.JP', + 'KUCHINOTSU.NAGASAKI.JP', + 'KUDAMATSU.YAMAGUCHI.JP', + 'KUDOYAMA.WAKAYAMA.JP', + 'KUI.HIROSHIMA.JP', + 'KUJI.IWATE.JP', + 'KUJU.OITA.JP', + 'KUJUKURI.CHIBA.JP', + 'KUKI.SAITAMA.JP', + 'KUMAGAYA.SAITAMA.JP', + 'KUMAKOGEN.EHIME.JP', + 'KUMAMOTO.JP', + 'KUMAMOTO.KUMAMOTO.JP', + 'KUMANO.HIROSHIMA.JP', + 'KUMANO.MIE.JP', + 'KUMATORI.OSAKA.JP', + 'KUMEJIMA.OKINAWA.JP', + 'KUMENAN.OKAYAMA.JP', + 'KUMIYAMA.KYOTO.JP', + 'KUNIGAMI.OKINAWA.JP', + 'KUNIMI.FUKUSHIMA.JP', + 'KUNISAKI.OITA.JP', + 'KUNITACHI.TOKYO.JP', + 'KUNITOMI.MIYAZAKI.JP', + 'KUNNEPPU.HOKKAIDO.JP', + 'KUNOHE.IWATE.JP', + 'KURASHIKI.OKAYAMA.JP', + 'KURATE.FUKUOKA.JP', + 'KURE.HIROSHIMA.JP', + 'KURIYAMA.HOKKAIDO.JP', + 'KUROBE.TOYAMA.JP', + 'KUROGI.FUKUOKA.JP', + 'KUROISHI.AOMORI.JP', + 'KUROISO.TOCHIGI.JP', + 'KUROMATSUNAI.HOKKAIDO.JP', + 'KURON.JP', + 'KUROTAKI.NARA.JP', + 'KURUME.FUKUOKA.JP', + 'KUSATSU.GUNMA.JP', + 'KUSATSU.SHIGA.JP', + 'KUSHIMA.MIYAZAKI.JP', + 'KUSHIMOTO.WAKAYAMA.JP', + 'KUSHIRO.HOKKAIDO.JP', + 'KUSU.OITA.JP', + 'KUTCHAN.HOKKAIDO.JP', + 'KUWANA.MIE.JP', + 'KUZUMAKI.IWATE.JP', + 'KYONAN.CHIBA.JP', + 'KYOTAMBA.KYOTO.JP', + 'KYOTANABE.KYOTO.JP', + 'KYOTANGO.KYOTO.JP', + 'KYOTO.JP', + 'KYOWA.AKITA.JP', + 'KYOWA.HOKKAIDO.JP', + 'KYURAGI.SAGA.JP', + 'LG.JP', + 'LITTLESTAR.JP', + 'LOLIPOPMC.JP', + 'LOLITAPUNK.JP', + 'LOMO.JP', + 'LOVEPOP.JP', + 'LOVESICK.JP', + 'MACHIDA.TOKYO.JP', + 'MAEBASHI.GUNMA.JP', + 'MAIBARA.SHIGA.JP', + 'MAIL-BOX.NE.JP', + 'MAIN.JP', + 'MAIZURU.KYOTO.JP', + 'MAKINOHARA.SHIZUOKA.JP', + 'MAKURAZAKI.KAGOSHIMA.JP', + 'MAMUROGAWA.YAMAGATA.JP', + 'MANIWA.OKAYAMA.JP', + 'MANNO.KAGAWA.JP', + 'MARUGAME.KAGAWA.JP', + 'MARUMORI.MIYAGI.JP', + 'MASAKI.EHIME.JP', + 'MASHIKE.HOKKAIDO.JP', + 'MASHIKI.KUMAMOTO.JP', + 'MASHIKO.TOCHIGI.JP', + 'MASUDA.SHIMANE.JP', + 'MATRIX.JP', + 'MATSUBARA.OSAKA.JP', + 'MATSUBUSHI.SAITAMA.JP', + 'MATSUDA.KANAGAWA.JP', + 'MATSUDO.CHIBA.JP', + 'MATSUE.SHIMANE.JP', + 'MATSUKAWA.NAGANO.JP', + 'MATSUMAE.HOKKAIDO.JP', + 'MATSUMOTO.KAGOSHIMA.JP', + 'MATSUMOTO.NAGANO.JP', + 'MATSUNO.EHIME.JP', + 'MATSUSAKA.MIE.JP', + 'MATSUSHIGE.TOKUSHIMA.JP', + 'MATSUSHIMA.MIYAGI.JP', + 'MATSUURA.NAGASAKI.JP', + 'MATSUYAMA.EHIME.JP', + 'MATSUZAKI.SHIZUOKA.JP', + 'MEGURO.TOKYO.JP', + 'MEIWA.GUNMA.JP', + 'MEIWA.MIE.JP', + 'MIASA.NAGANO.JP', + 'MIBU.TOCHIGI.JP', + 'MIDORI.CHIBA.JP', + 'MIDORI.GUNMA.JP', + 'MIE.JP', + 'MIFUNE.KUMAMOTO.JP', + 'MIHAMA.AICHI.JP', + 'MIHAMA.CHIBA.JP', + 'MIHAMA.FUKUI.JP', + 'MIHAMA.MIE.JP', + 'MIHAMA.WAKAYAMA.JP', + 'MIHARA.HIROSHIMA.JP', + 'MIHARA.KOCHI.JP', + 'MIHARU.FUKUSHIMA.JP', + 'MIHO.IBARAKI.JP', + 'MIKASA.HOKKAIDO.JP', + 'MIKAWA.YAMAGATA.JP', + 'MIKI.HYOGO.JP', + 'MIMA.TOKUSHIMA.JP', + 'MIMATA.MIYAZAKI.JP', + 'MIMOZA.JP', + 'MINAKAMI.GUNMA.JP', + 'MINAMATA.KUMAMOTO.JP', + 'MINAMI-ALPS.YAMANASHI.JP', + 'MINAMI.FUKUOKA.JP', + 'MINAMI.KYOTO.JP', + 'MINAMI.TOKUSHIMA.JP', + 'MINAMIAIKI.NAGANO.JP', + 'MINAMIASHIGARA.KANAGAWA.JP', + 'MINAMIAWAJI.HYOGO.JP', + 'MINAMIBOSO.CHIBA.JP', + 'MINAMIDAITO.OKINAWA.JP', + 'MINAMIECHIZEN.FUKUI.JP', + 'MINAMIFURANO.HOKKAIDO.JP', + 'MINAMIISE.MIE.JP', + 'MINAMIIZU.SHIZUOKA.JP', + 'MINAMIMAKI.NAGANO.JP', + 'MINAMIMINOWA.NAGANO.JP', + 'MINAMIOGUNI.KUMAMOTO.JP', + 'MINAMISANRIKU.MIYAGI.JP', + 'MINAMITANE.KAGOSHIMA.JP', + 'MINAMIUONUMA.NIIGATA.JP', + 'MINAMIYAMASHIRO.KYOTO.JP', + 'MINANO.SAITAMA.JP', + 'MINATO.OSAKA.JP', + 'MINATO.TOKYO.JP', + 'MINO.GIFU.JP', + 'MINOBU.YAMANASHI.JP', + 'MINOH.OSAKA.JP', + 'MINOKAMO.GIFU.JP', + 'MINOWA.NAGANO.JP', + 'MINTS.NE.JP', + 'MISAKI.OKAYAMA.JP', + 'MISAKI.OSAKA.JP', + 'MISASA.TOTTORI.JP', + 'MISATO.AKITA.JP', + 'MISATO.MIYAGI.JP', + 'MISATO.SAITAMA.JP', + 'MISATO.SHIMANE.JP', + 'MISATO.WAKAYAMA.JP', + 'MISAWA.AOMORI.JP', + 'MISHIMA.FUKUSHIMA.JP', + 'MISHIMA.SHIZUOKA.JP', + 'MISUGI.MIE.JP', + 'MITAKA.TOKYO.JP', + 'MITAKE.GIFU.JP', + 'MITANE.AKITA.JP', + 'MITO.IBARAKI.JP', + 'MITOU.YAMAGUCHI.JP', + 'MITOYO.KAGAWA.JP', + 'MITSUE.NARA.JP', + 'MITSUKE.NIIGATA.JP', + 'MIURA.KANAGAWA.JP', + 'MIYADA.NAGANO.JP', + 'MIYAGI.JP', + 'MIYAKE.NARA.JP', + 'MIYAKO.FUKUOKA.JP', + 'MIYAKO.IWATE.JP', + 'MIYAKONOJO.MIYAZAKI.JP', + 'MIYAMA.FUKUOKA.JP', + 'MIYAMA.MIE.JP', + 'MIYASHIRO.SAITAMA.JP', + 'MIYAWAKA.FUKUOKA.JP', + 'MIYAZAKI.JP', + 'MIYAZAKI.MIYAZAKI.JP', + 'MIYAZU.KYOTO.JP', + 'MIYOSHI.AICHI.JP', + 'MIYOSHI.HIROSHIMA.JP', + 'MIYOSHI.SAITAMA.JP', + 'MIYOSHI.TOKUSHIMA.JP', + 'MIYOTA.NAGANO.JP', + 'MIZUHO.TOKYO.JP', + 'MIZUMAKI.FUKUOKA.JP', + 'MIZUNAMI.GIFU.JP', + 'MIZUSAWA.IWATE.JP', + 'MOBARA.CHIBA.JP', + 'MOCHIZUKI.NAGANO.JP', + 'MODS.JP', + 'MOKA.TOCHIGI.JP', + 'MOKUREN.NE.JP', + 'MOMBETSU.HOKKAIDO.JP', + 'MOND.JP', + 'MONGOLIAN.JP', + 'MOO.JP', + 'MORIGUCHI.OSAKA.JP', + 'MORIMACHI.SHIZUOKA.JP', + 'MORIOKA.IWATE.JP', + 'MORIYA.IBARAKI.JP', + 'MORIYAMA.SHIGA.JP', + 'MORIYOSHI.AKITA.JP', + 'MOROTSUKA.MIYAZAKI.JP', + 'MOROYAMA.SAITAMA.JP', + 'MOSEUSHI.HOKKAIDO.JP', + 'MOTEGI.TOCHIGI.JP', + 'MOTOBU.OKINAWA.JP', + 'MOTOSU.GIFU.JP', + 'MOTOYAMA.KOCHI.JP', + 'MUGI.TOKUSHIMA.JP', + 'MUIKA.NIIGATA.JP', + 'MUKAWA.HOKKAIDO.JP', + 'MUKO.KYOTO.JP', + 'MUNAKATA.FUKUOKA.JP', + 'MURAKAMI.NIIGATA.JP', + 'MURATA.MIYAGI.JP', + 'MURAYAMA.YAMAGATA.JP', + 'MURORAN.HOKKAIDO.JP', + 'MUROTO.KOCHI.JP', + 'MUSASHIMURAYAMA.TOKYO.JP', + 'MUSASHINO.TOKYO.JP', + 'MUTSU.AOMORI.JP', + 'MUTSUZAWA.CHIBA.JP', + 'MYDNS.JP', + 'MYOKO.NIIGATA.JP', + 'NABARI.MIE.JP', + 'NACHIKATSUURA.WAKAYAMA.JP', + 'NAGAHAMA.SHIGA.JP', + 'NAGAI.YAMAGATA.JP', + 'NAGANO.JP', + 'NAGANO.NAGANO.JP', + 'NAGANOHARA.GUNMA.JP', + 'NAGAOKA.NIIGATA.JP', + 'NAGAOKAKYO.KYOTO.JP', + 'NAGARA.CHIBA.JP', + 'NAGAREYAMA.CHIBA.JP', + 'NAGASAKI.JP', + 'NAGASAKI.NAGASAKI.JP', + 'NAGASU.KUMAMOTO.JP', + 'NAGATO.YAMAGUCHI.JP', + 'NAGATORO.SAITAMA.JP', + 'NAGAWA.NAGANO.JP', + 'NAGI.OKAYAMA.JP', + 'NAGISO.NAGANO.JP', + 'NAGO.OKINAWA.JP', + 'NAHA.OKINAWA.JP', + 'NAHARI.KOCHI.JP', + 'NAIE.HOKKAIDO.JP', + 'NAKA.HIROSHIMA.JP', + 'NAKA.IBARAKI.JP', + 'NAKADOMARI.AOMORI.JP', + 'NAKAGAWA.FUKUOKA.JP', + 'NAKAGAWA.HOKKAIDO.JP', + 'NAKAGAWA.NAGANO.JP', + 'NAKAGAWA.TOKUSHIMA.JP', + 'NAKAGUSUKU.OKINAWA.JP', + 'NAKAGYO.KYOTO.JP', + 'NAKAI.KANAGAWA.JP', + 'NAKAMA.FUKUOKA.JP', + 'NAKAMICHI.YAMANASHI.JP', + 'NAKAMURA.KOCHI.JP', + 'NAKANIIKAWA.TOYAMA.JP', + 'NAKANO.NAGANO.JP', + 'NAKANO.TOKYO.JP', + 'NAKANOJO.GUNMA.JP', + 'NAKANOTO.ISHIKAWA.JP', + 'NAKASATSUNAI.HOKKAIDO.JP', + 'NAKATANE.KAGOSHIMA.JP', + 'NAKATOMBETSU.HOKKAIDO.JP', + 'NAKATSUGAWA.GIFU.JP', + 'NAKAYAMA.YAMAGATA.JP', + 'NAKIJIN.OKINAWA.JP', + 'NAMASTE.JP', + 'NAMEGATA.IBARAKI.JP', + 'NAMEGAWA.SAITAMA.JP', + 'NAMERIKAWA.TOYAMA.JP', + 'NAMIE.FUKUSHIMA.JP', + 'NAMIKATA.EHIME.JP', + 'NANAE.HOKKAIDO.JP', + 'NANAO.ISHIKAWA.JP', + 'NANBU.TOTTORI.JP', + 'NANBU.YAMANASHI.JP', + 'NANGO.FUKUSHIMA.JP', + 'NANJO.OKINAWA.JP', + 'NANKOKU.KOCHI.JP', + 'NANMOKU.GUNMA.JP', + 'NANPORO.HOKKAIDO.JP', + 'NANTAN.KYOTO.JP', + 'NANTO.TOYAMA.JP', + 'NANYO.YAMAGATA.JP', + 'NAOSHIMA.KAGAWA.JP', + 'NARA.JP', + 'NARA.NARA.JP', + 'NARASHINO.CHIBA.JP', + 'NARITA.CHIBA.JP', + 'NARUSAWA.YAMANASHI.JP', + 'NARUTO.TOKUSHIMA.JP', + 'NASU.TOCHIGI.JP', + 'NASUSHIOBARA.TOCHIGI.JP', + 'NATORI.MIYAGI.JP', + 'NAYORO.HOKKAIDO.JP', + 'NE.JP', + 'NEMURO.HOKKAIDO.JP', + 'NERIMA.TOKYO.JP', + 'NETGAMERS.JP', + 'NEYAGAWA.OSAKA.JP', + 'NICHINAN.MIYAZAKI.JP', + 'NICHINAN.TOTTORI.JP', + 'NIIGATA.JP', + 'NIIGATA.NIIGATA.JP', + 'NIIHAMA.EHIME.JP', + 'NIIKAPPU.HOKKAIDO.JP', + 'NIIMI.OKAYAMA.JP', + 'NIIZA.SAITAMA.JP', + 'NIKAHO.AKITA.JP', + 'NIKI.HOKKAIDO.JP', + 'NIKITA.JP', + 'NIKKO.TOCHIGI.JP', + 'NINOHE.IWATE.JP', + 'NINOMIYA.KANAGAWA.JP', + 'NIRASAKI.YAMANASHI.JP', + 'NISHI.FUKUOKA.JP', + 'NISHI.OSAKA.JP', + 'NISHIAIZU.FUKUSHIMA.JP', + 'NISHIARITA.SAGA.JP', + 'NISHIAWAKURA.OKAYAMA.JP', + 'NISHIAZAI.SHIGA.JP', + 'NISHIGO.FUKUSHIMA.JP', + 'NISHIHARA.KUMAMOTO.JP', + 'NISHIHARA.OKINAWA.JP', + 'NISHIIZU.SHIZUOKA.JP', + 'NISHIKATA.TOCHIGI.JP', + 'NISHIKATSURA.YAMANASHI.JP', + 'NISHIKAWA.YAMAGATA.JP', + 'NISHIMERA.MIYAZAKI.JP', + 'NISHINOMIYA.HYOGO.JP', + 'NISHINOOMOTE.KAGOSHIMA.JP', + 'NISHINOSHIMA.SHIMANE.JP', + 'NISHIO.AICHI.JP', + 'NISHIOKOPPE.HOKKAIDO.JP', + 'NISHITOSA.KOCHI.JP', + 'NISHIWAKI.HYOGO.JP', + 'NISSHIN.AICHI.JP', + 'NIYODOGAWA.KOCHI.JP', + 'NOBEOKA.MIYAZAKI.JP', + 'NOBORIBETSU.HOKKAIDO.JP', + 'NOBUSHI.JP', + 'NODA.CHIBA.JP', + 'NODA.IWATE.JP', + 'NOGATA.FUKUOKA.JP', + 'NOGI.TOCHIGI.JP', + 'NOHEJI.AOMORI.JP', + 'NOMI.ISHIKAWA.JP', + 'NONOICHI.ISHIKAWA.JP', + 'NOOR.JP', + 'NOSE.OSAKA.JP', + 'NOSEGAWA.NARA.JP', + 'NOSHIRO.AKITA.JP', + 'NOTO.ISHIKAWA.JP', + 'NOTOGAWA.SHIGA.JP', + 'NOZAWAONSEN.NAGANO.JP', + 'NUMATA.GUNMA.JP', + 'NUMATA.HOKKAIDO.JP', + 'NUMAZU.SHIZUOKA.JP', + 'NYANTA.JP', + 'NYUZEN.TOYAMA.JP', + 'O0O0.JP', + 'OAMISHIRASATO.CHIBA.JP', + 'OARAI.IBARAKI.JP', + 'OBAMA.FUKUI.JP', + 'OBAMA.NAGASAKI.JP', + 'OBANAZAWA.YAMAGATA.JP', + 'OBIHIRO.HOKKAIDO.JP', + 'OBIRA.HOKKAIDO.JP', + 'OBU.AICHI.JP', + 'OBUSE.NAGANO.JP', + 'OCHI.KOCHI.JP', + 'ODATE.AKITA.JP', + 'ODAWARA.KANAGAWA.JP', + 'OE.YAMAGATA.JP', + 'OFUNATO.IWATE.JP', + 'OGA.AKITA.JP', + 'OGAKI.GIFU.JP', + 'OGANO.SAITAMA.JP', + 'OGASAWARA.TOKYO.JP', + 'OGATA.AKITA.JP', + 'OGAWA.IBARAKI.JP', + 'OGAWA.NAGANO.JP', + 'OGAWA.SAITAMA.JP', + 'OGAWARA.MIYAGI.JP', + 'OGI.SAGA.JP', + 'OGIMI.OKINAWA.JP', + 'OGORI.FUKUOKA.JP', + 'OGOSE.SAITAMA.JP', + 'OGUCHI.AICHI.JP', + 'OGUNI.KUMAMOTO.JP', + 'OGUNI.YAMAGATA.JP', + 'OHARU.AICHI.JP', + 'OHDA.SHIMANE.JP', + 'OHI.FUKUI.JP', + 'OHIRA.MIYAGI.JP', + 'OHIRA.TOCHIGI.JP', + 'OHKURA.YAMAGATA.JP', + 'OHTAWARA.TOCHIGI.JP', + 'OI.KANAGAWA.JP', + 'OIRASE.AOMORI.JP', + 'OISHIDA.YAMAGATA.JP', + 'OISO.KANAGAWA.JP', + 'OITA.JP', + 'OITA.OITA.JP', + 'OIZUMI.GUNMA.JP', + 'OJI.NARA.JP', + 'OJIYA.NIIGATA.JP', + 'OKAGAKI.FUKUOKA.JP', + 'OKAWA.FUKUOKA.JP', + 'OKAWA.KOCHI.JP', + 'OKAYA.NAGANO.JP', + 'OKAYAMA.JP', + 'OKAYAMA.OKAYAMA.JP', + 'OKAZAKI.AICHI.JP', + 'OKEGAWA.SAITAMA.JP', + 'OKETO.HOKKAIDO.JP', + 'OKI.FUKUOKA.JP', + 'OKINAWA.JP', + 'OKINAWA.OKINAWA.JP', + 'OKINOSHIMA.SHIMANE.JP', + 'OKOPPE.HOKKAIDO.JP', + 'OKUIZUMO.SHIMANE.JP', + 'OKUMA.FUKUSHIMA.JP', + 'OKUTAMA.TOKYO.JP', + 'OMACHI.NAGANO.JP', + 'OMACHI.SAGA.JP', + 'OMAEZAKI.SHIZUOKA.JP', + 'OME.TOKYO.JP', + 'OMI.NAGANO.JP', + 'OMI.NIIGATA.JP', + 'OMIGAWA.CHIBA.JP', + 'OMIHACHIMAN.SHIGA.JP', + 'OMITAMA.IBARAKI.JP', + 'OMIYA.SAITAMA.JP', + 'OMOTEGO.FUKUSHIMA.JP', + 'OMURA.NAGASAKI.JP', + 'OMUTA.FUKUOKA.JP', + 'ONAGAWA.MIYAGI.JP', + 'ONGA.FUKUOKA.JP', + 'ONJUKU.CHIBA.JP', + 'ONNA.OKINAWA.JP', + 'ONO.FUKUI.JP', + 'ONO.FUKUSHIMA.JP', + 'ONO.HYOGO.JP', + 'ONOJO.FUKUOKA.JP', + 'ONOMICHI.HIROSHIMA.JP', + 'OOKUWA.NAGANO.JP', + 'OOPS.JP', + 'OOSHIKA.NAGANO.JP', + 'OPAL.NE.JP', + 'OR.JP', + 'ORA.GUNMA.JP', + 'OSAKA.JP', + 'OSAKASAYAMA.OSAKA.JP', + 'OSAKI.MIYAGI.JP', + 'OSAKIKAMIJIMA.HIROSHIMA.JP', + 'OSETO.NAGASAKI.JP', + 'OSHIMA.TOKYO.JP', + 'OSHIMA.YAMAGUCHI.JP', + 'OSHINO.YAMANASHI.JP', + 'OSHU.IWATE.JP', + 'OTA.GUNMA.JP', + 'OTA.TOKYO.JP', + 'OTAKE.HIROSHIMA.JP', + 'OTAKI.CHIBA.JP', + 'OTAKI.NAGANO.JP', + 'OTAKI.SAITAMA.JP', + 'OTAMA.FUKUSHIMA.JP', + 'OTARI.NAGANO.JP', + 'OTARU.HOKKAIDO.JP', + 'OTO.FUKUOKA.JP', + 'OTOBE.HOKKAIDO.JP', + 'OTOFUKE.HOKKAIDO.JP', + 'OTOINEPPU.HOKKAIDO.JP', + 'OTOYO.KOCHI.JP', + 'OTSU.SHIGA.JP', + 'OTSUCHI.IWATE.JP', + 'OTSUKI.KOCHI.JP', + 'OTSUKI.YAMANASHI.JP', + 'OUCHI.SAGA.JP', + 'OUDA.NARA.JP', + 'OUMU.HOKKAIDO.JP', + 'OWANI.AOMORI.JP', + 'OWARIASAHI.AICHI.JP', + 'OYABE.TOYAMA.JP', + 'OYAMA.TOCHIGI.JP', + 'OYAMAZAKI.KYOTO.JP', + 'OYODO.NARA.JP', + 'OZORA.HOKKAIDO.JP', + 'OZU.EHIME.JP', + 'OZU.KUMAMOTO.JP', + 'PARALLEL.JP', + 'PARASITE.JP', + 'PECORI.JP', + 'PEEWEE.JP', + 'PENNE.JP', + 'PEPPER.JP', + 'PERMA.JP', + 'PGW.JP', + 'PIGBOAT.JP', + 'PINOKO.JP', + 'PIPPU.HOKKAIDO.JP', + 'PUNYU.JP', + 'PUPU.JP', + 'PUSSYCAT.JP', + 'PYA.JP', + 'RAINDROP.JP', + 'RANKOSHI.HOKKAIDO.JP', + 'RANZAN.SAITAMA.JP', + 'RDY.JP', + 'READYMADE.JP', + 'REBUN.HOKKAIDO.JP', + 'RGR.JP', + 'RIFU.MIYAGI.JP', + 'RIKUBETSU.HOKKAIDO.JP', + 'RIKUZENTAKATA.IWATE.JP', + 'RISHIRI.HOKKAIDO.JP', + 'RISHIRIFUJI.HOKKAIDO.JP', + 'RITTO.SHIGA.JP', + 'ROKUNOHE.AOMORI.JP', + 'RS.WEBACCEL.JP', + 'RULEZ.JP', + 'RYOKAMI.SAITAMA.JP', + 'RYUGASAKI.IBARAKI.JP', + 'RYUOH.SHIGA.JP', + 'S3.ISK01.SAKURASTORAGE.JP', + 'S3.ISK02.SAKURASTORAGE.JP', + 'SABAE.FUKUI.JP', + 'SADIST.JP', + 'SADO.NIIGATA.JP', + 'SAGA.JP', + 'SAGA.SAGA.JP', + 'SAGAE.YAMAGATA.JP', + 'SAGAMIHARA.KANAGAWA.JP', + 'SAIGAWA.FUKUOKA.JP', + 'SAIJO.EHIME.JP', + 'SAIKAI.NAGASAKI.JP', + 'SAIKI.OITA.JP', + 'SAITAMA.JP', + 'SAITAMA.SAITAMA.JP', + 'SAITO.MIYAZAKI.JP', + 'SAKA.HIROSHIMA.JP', + 'SAKADO.SAITAMA.JP', + 'SAKAE.CHIBA.JP', + 'SAKAE.NAGANO.JP', + 'SAKAHOGI.GIFU.JP', + 'SAKAI.FUKUI.JP', + 'SAKAI.IBARAKI.JP', + 'SAKAI.OSAKA.JP', + 'SAKAIMINATO.TOTTORI.JP', + 'SAKAKI.NAGANO.JP', + 'SAKATA.YAMAGATA.JP', + 'SAKAWA.KOCHI.JP', + 'SAKEGAWA.YAMAGATA.JP', + 'SAKU.NAGANO.JP', + 'SAKUHO.NAGANO.JP', + 'SAKURA.CHIBA.JP', + 'SAKURA.NE.JP', + 'SAKURA.TOCHIGI.JP', + 'SAKURAGAWA.IBARAKI.JP', + 'SAKURAI.NARA.JP', + 'SAKYO.KYOTO.JP', + 'SALOON.JP', + 'SAMEGAWA.FUKUSHIMA.JP', + 'SAMUKAWA.KANAGAWA.JP', + 'SANAGOCHI.TOKUSHIMA.JP', + 'SANDA.HYOGO.JP', + 'SANGO.NARA.JP', + 'SANJO.NIIGATA.JP', + 'SANNAN.HYOGO.JP', + 'SANNOHE.AOMORI.JP', + 'SANO.TOCHIGI.JP', + 'SANUKI.KAGAWA.JP', + 'SAROMA.HOKKAIDO.JP', + 'SARUFUTSU.HOKKAIDO.JP', + 'SASAGURI.FUKUOKA.JP', + 'SASAYAMA.HYOGO.JP', + 'SASEBO.NAGASAKI.JP', + 'SATOSHO.OKAYAMA.JP', + 'SATSUMASENDAI.KAGOSHIMA.JP', + 'SATTE.SAITAMA.JP', + 'SAYAMA.OSAKA.JP', + 'SAYAMA.SAITAMA.JP', + 'SAYO.HYOGO.JP', + 'SBLO.JP', + 'SCHOOLBUS.JP', + 'SECRET.JP', + 'SEIHI.NAGASAKI.JP', + 'SEIKA.KYOTO.JP', + 'SEIRO.NIIGATA.JP', + 'SEIROU.NIIGATA.JP', + 'SEIYO.EHIME.JP', + 'SEKI.GIFU.JP', + 'SEKIGAHARA.GIFU.JP', + 'SEKIKAWA.NIIGATA.JP', + 'SEMBOKU.AKITA.JP', + 'SEMINE.MIYAGI.JP', + 'SENNAN.OSAKA.JP', + 'SERA.HIROSHIMA.JP', + 'SERANISHI.HIROSHIMA.JP', + 'SETAGAYA.TOKYO.JP', + 'SETO.AICHI.JP', + 'SETOUCHI.OKAYAMA.JP', + 'SETTSU.OSAKA.JP', + 'SHAKOTAN.HOKKAIDO.JP', + 'SHARI.HOKKAIDO.JP', + 'SHIBATA.MIYAGI.JP', + 'SHIBATA.NIIGATA.JP', + 'SHIBECHA.HOKKAIDO.JP', + 'SHIBETSU.HOKKAIDO.JP', + 'SHIBUKAWA.GUNMA.JP', + 'SHIBUYA.TOKYO.JP', + 'SHICHIKASHUKU.MIYAGI.JP', + 'SHICHINOHE.AOMORI.JP', + 'SHIGA.JP', + 'SHIIBA.MIYAZAKI.JP', + 'SHIJONAWATE.OSAKA.JP', + 'SHIKA.ISHIKAWA.JP', + 'SHIKABE.HOKKAIDO.JP', + 'SHIKAMA.MIYAGI.JP', + 'SHIKAOI.HOKKAIDO.JP', + 'SHIKATSU.AICHI.JP', + 'SHIKI.SAITAMA.JP', + 'SHIKOKUCHUO.EHIME.JP', + 'SHIMA.MIE.JP', + 'SHIMABARA.NAGASAKI.JP', + 'SHIMADA.SHIZUOKA.JP', + 'SHIMAMAKI.HOKKAIDO.JP', + 'SHIMAMOTO.OSAKA.JP', + 'SHIMANE.JP', + 'SHIMANE.SHIMANE.JP', + 'SHIMIZU.HOKKAIDO.JP', + 'SHIMIZU.SHIZUOKA.JP', + 'SHIMODA.SHIZUOKA.JP', + 'SHIMODATE.IBARAKI.JP', + 'SHIMOFUSA.CHIBA.JP', + 'SHIMOGO.FUKUSHIMA.JP', + 'SHIMOICHI.NARA.JP', + 'SHIMOJI.OKINAWA.JP', + 'SHIMOKAWA.HOKKAIDO.JP', + 'SHIMOKITAYAMA.NARA.JP', + 'SHIMONITA.GUNMA.JP', + 'SHIMONOSEKI.YAMAGUCHI.JP', + 'SHIMOSUWA.NAGANO.JP', + 'SHIMOTSUKE.TOCHIGI.JP', + 'SHIMOTSUMA.IBARAKI.JP', + 'SHINAGAWA.TOKYO.JP', + 'SHINANOMACHI.NAGANO.JP', + 'SHINGO.AOMORI.JP', + 'SHINGU.FUKUOKA.JP', + 'SHINGU.HYOGO.JP', + 'SHINGU.WAKAYAMA.JP', + 'SHINICHI.HIROSHIMA.JP', + 'SHINJO.NARA.JP', + 'SHINJO.OKAYAMA.JP', + 'SHINJO.YAMAGATA.JP', + 'SHINJUKU.TOKYO.JP', + 'SHINKAMIGOTO.NAGASAKI.JP', + 'SHINONSEN.HYOGO.JP', + 'SHINSHINOTSU.HOKKAIDO.JP', + 'SHINSHIRO.AICHI.JP', + 'SHINTO.GUNMA.JP', + 'SHINTOKU.HOKKAIDO.JP', + 'SHINTOMI.MIYAZAKI.JP', + 'SHINYOSHITOMI.FUKUOKA.JP', + 'SHIOGAMA.MIYAGI.JP', + 'SHIOJIRI.NAGANO.JP', + 'SHIOYA.TOCHIGI.JP', + 'SHIRAHAMA.WAKAYAMA.JP', + 'SHIRAKAWA.FUKUSHIMA.JP', + 'SHIRAKAWA.GIFU.JP', + 'SHIRAKO.CHIBA.JP', + 'SHIRANUKA.HOKKAIDO.JP', + 'SHIRAOI.HOKKAIDO.JP', + 'SHIRAOKA.SAITAMA.JP', + 'SHIRATAKA.YAMAGATA.JP', + 'SHIRIUCHI.HOKKAIDO.JP', + 'SHIROI.CHIBA.JP', + 'SHIROISHI.MIYAGI.JP', + 'SHIROISHI.SAGA.JP', + 'SHIROSATO.IBARAKI.JP', + 'SHISHIKUI.TOKUSHIMA.JP', + 'SHISO.HYOGO.JP', + 'SHISUI.CHIBA.JP', + 'SHITARA.AICHI.JP', + 'SHIWA.IWATE.JP', + 'SHIZUKUISHI.IWATE.JP', + 'SHIZUOKA.JP', + 'SHIZUOKA.SHIZUOKA.JP', + 'SHOBARA.HIROSHIMA.JP', + 'SHONAI.FUKUOKA.JP', + 'SHONAI.YAMAGATA.JP', + 'SHOO.OKAYAMA.JP', + 'SHOWA.FUKUSHIMA.JP', + 'SHOWA.GUNMA.JP', + 'SHOWA.YAMANASHI.JP', + 'SHUNAN.YAMAGUCHI.JP', + 'SKR.JP', + 'SOBETSU.HOKKAIDO.JP', + 'SODEGAURA.CHIBA.JP', + 'SOEDA.FUKUOKA.JP', + 'SOJA.OKAYAMA.JP', + 'SOKA.SAITAMA.JP', + 'SOMA.FUKUSHIMA.JP', + 'SONI.NARA.JP', + 'SOO.KAGOSHIMA.JP', + 'SOSA.CHIBA.JP', + 'SOWA.IBARAKI.JP', + 'STABA.JP', + 'STRIPPER.JP', + 'SUB.JP', + 'SUE.FUKUOKA.JP', + 'SUGINAMI.TOKYO.JP', + 'SUGITO.SAITAMA.JP', + 'SUIFU.IBARAKI.JP', + 'SUITA.OSAKA.JP', + 'SUKAGAWA.FUKUSHIMA.JP', + 'SUKUMO.KOCHI.JP', + 'SUMIDA.TOKYO.JP', + 'SUMITA.IWATE.JP', + 'SUMOMO.NE.JP', + 'SUMOTO.HYOGO.JP', + 'SUMOTO.KUMAMOTO.JP', + 'SUNAGAWA.HOKKAIDO.JP', + 'SUNNYDAY.JP', + 'SUPERSALE.JP', + 'SUSAKI.KOCHI.JP', + 'SUSONO.SHIZUOKA.JP', + 'SUWA.NAGANO.JP', + 'SUZAKA.NAGANO.JP', + 'SUZU.ISHIKAWA.JP', + 'SUZUKA.MIE.JP', + 'TABAYAMA.YAMANASHI.JP', + 'TABUSE.YAMAGUCHI.JP', + 'TACHIARAI.FUKUOKA.JP', + 'TACHIKAWA.TOKYO.JP', + 'TADAOKA.OSAKA.JP', + 'TADO.MIE.JP', + 'TADOTSU.KAGAWA.JP', + 'TAGAJO.MIYAGI.JP', + 'TAGAMI.NIIGATA.JP', + 'TAGAWA.FUKUOKA.JP', + 'TAHARA.AICHI.JP', + 'TAIJI.WAKAYAMA.JP', + 'TAIKI.HOKKAIDO.JP', + 'TAIKI.MIE.JP', + 'TAINAI.NIIGATA.JP', + 'TAIRA.TOYAMA.JP', + 'TAISHI.HYOGO.JP', + 'TAISHI.OSAKA.JP', + 'TAISHIN.FUKUSHIMA.JP', + 'TAITO.TOKYO.JP', + 'TAIWA.MIYAGI.JP', + 'TAJIMI.GIFU.JP', + 'TAJIRI.OSAKA.JP', + 'TAKA.HYOGO.JP', + 'TAKAGI.NAGANO.JP', + 'TAKAHAGI.IBARAKI.JP', + 'TAKAHAMA.AICHI.JP', + 'TAKAHAMA.FUKUI.JP', + 'TAKAHARU.MIYAZAKI.JP', + 'TAKAHASHI.OKAYAMA.JP', + 'TAKAHATA.YAMAGATA.JP', + 'TAKAISHI.OSAKA.JP', + 'TAKAMATSU.KAGAWA.JP', + 'TAKAMORI.KUMAMOTO.JP', + 'TAKAMORI.NAGANO.JP', + 'TAKANABE.MIYAZAKI.JP', + 'TAKANEZAWA.TOCHIGI.JP', + 'TAKAOKA.TOYAMA.JP', + 'TAKARAZUKA.HYOGO.JP', + 'TAKASAGO.HYOGO.JP', + 'TAKASAKI.GUNMA.JP', + 'TAKASHIMA.SHIGA.JP', + 'TAKASU.HOKKAIDO.JP', + 'TAKATA.FUKUOKA.JP', + 'TAKATORI.NARA.JP', + 'TAKATSUKI.OSAKA.JP', + 'TAKATSUKI.SHIGA.JP', + 'TAKAYAMA.GIFU.JP', + 'TAKAYAMA.GUNMA.JP', + 'TAKAYAMA.NAGANO.JP', + 'TAKAZAKI.MIYAZAKI.JP', + 'TAKEHARA.HIROSHIMA.JP', + 'TAKETA.OITA.JP', + 'TAKETOMI.OKINAWA.JP', + 'TAKI.MIE.JP', + 'TAKIKAWA.HOKKAIDO.JP', + 'TAKINO.HYOGO.JP', + 'TAKINOUE.HOKKAIDO.JP', + 'TAKKO.AOMORI.JP', + 'TAKO.CHIBA.JP', + 'TAKU.SAGA.JP', + 'TAMA.TOKYO.JP', + 'TAMAKAWA.FUKUSHIMA.JP', + 'TAMAKI.MIE.JP', + 'TAMAMURA.GUNMA.JP', + 'TAMANO.OKAYAMA.JP', + 'TAMATSUKURI.IBARAKI.JP', + 'TAMAYU.SHIMANE.JP', + 'TAMBA.HYOGO.JP', + 'TANABE.KYOTO.JP', + 'TANABE.WAKAYAMA.JP', + 'TANAGURA.FUKUSHIMA.JP', + 'TANK.JP', + 'TANOHATA.IWATE.JP', + 'TARA.SAGA.JP', + 'TARAMA.OKINAWA.JP', + 'TARUI.GIFU.JP', + 'TARUMIZU.KAGOSHIMA.JP', + 'TATEBAYASHI.GUNMA.JP', + 'TATESHINA.NAGANO.JP', + 'TATEYAMA.CHIBA.JP', + 'TATEYAMA.TOYAMA.JP', + 'TATSUNO.HYOGO.JP', + 'TATSUNO.NAGANO.JP', + 'TAWARAMOTO.NARA.JP', + 'TENDO.YAMAGATA.JP', + 'TENEI.FUKUSHIMA.JP', + 'TENKAWA.NARA.JP', + 'TENRI.NARA.JP', + 'TESHIKAGA.HOKKAIDO.JP', + 'THESHOP.JP', + 'THICK.JP', + 'TOBA.MIE.JP', + 'TOBE.EHIME.JP', + 'TOBETSU.HOKKAIDO.JP', + 'TOBISHIMA.AICHI.JP', + 'TOCHIGI.JP', + 'TOCHIGI.TOCHIGI.JP', + 'TOCHIO.NIIGATA.JP', + 'TODA.SAITAMA.JP', + 'TOEI.AICHI.JP', + 'TOGA.TOYAMA.JP', + 'TOGAKUSHI.NAGANO.JP', + 'TOGANE.CHIBA.JP', + 'TOGITSU.NAGASAKI.JP', + 'TOGO.AICHI.JP', + 'TOGURA.NAGANO.JP', + 'TOHMA.HOKKAIDO.JP', + 'TOHNOSHO.CHIBA.JP', + 'TOHO.FUKUOKA.JP', + 'TOKAI.AICHI.JP', + 'TOKAI.IBARAKI.JP', + 'TOKAMACHI.NIIGATA.JP', + 'TOKASHIKI.OKINAWA.JP', + 'TOKI.GIFU.JP', + 'TOKIGAWA.SAITAMA.JP', + 'TOKONAME.AICHI.JP', + 'TOKOROZAWA.SAITAMA.JP', + 'TOKUSHIMA.JP', + 'TOKUSHIMA.TOKUSHIMA.JP', + 'TOKUYAMA.YAMAGUCHI.JP', + 'TOKYO.JP', + 'TOMAKOMAI.HOKKAIDO.JP', + 'TOMARI.HOKKAIDO.JP', + 'TOME.MIYAGI.JP', + 'TOMI.NAGANO.JP', + 'TOMIGUSUKU.OKINAWA.JP', + 'TOMIKA.GIFU.JP', + 'TOMIOKA.GUNMA.JP', + 'TOMISATO.CHIBA.JP', + 'TOMIYA.MIYAGI.JP', + 'TOMOBE.IBARAKI.JP', + 'TONAKI.OKINAWA.JP', + 'TONAMI.TOYAMA.JP', + 'TONDABAYASHI.OSAKA.JP', + 'TONE.IBARAKI.JP', + 'TONKOTSU.JP', + 'TONO.IWATE.JP', + 'TONOSHO.KAGAWA.JP', + 'TOON.EHIME.JP', + 'TOPAZ.NE.JP', + 'TORAHIME.SHIGA.JP', + 'TORIDE.IBARAKI.JP', + 'TOSA.KOCHI.JP', + 'TOSASHIMIZU.KOCHI.JP', + 'TOSHIMA.TOKYO.JP', + 'TOSU.SAGA.JP', + 'TOTTORI.JP', + 'TOTTORI.TOTTORI.JP', + 'TOWADA.AOMORI.JP', + 'TOYA.HOKKAIDO.JP', + 'TOYAKO.HOKKAIDO.JP', + 'TOYAMA.JP', + 'TOYAMA.TOYAMA.JP', + 'TOYO.KOCHI.JP', + 'TOYOAKE.AICHI.JP', + 'TOYOHASHI.AICHI.JP', + 'TOYOKAWA.AICHI.JP', + 'TOYONAKA.OSAKA.JP', + 'TOYONE.AICHI.JP', + 'TOYONO.OSAKA.JP', + 'TOYOOKA.HYOGO.JP', + 'TOYOSATO.SHIGA.JP', + 'TOYOTA.AICHI.JP', + 'TOYOTA.YAMAGUCHI.JP', + 'TOYOTOMI.HOKKAIDO.JP', + 'TOYOTSU.FUKUOKA.JP', + 'TOYOURA.HOKKAIDO.JP', + 'TOZAWA.YAMAGATA.JP', + 'TSU.MIE.JP', + 'TSUBAME.NIIGATA.JP', + 'TSUBATA.ISHIKAWA.JP', + 'TSUBETSU.HOKKAIDO.JP', + 'TSUCHIURA.IBARAKI.JP', + 'TSUGA.TOCHIGI.JP', + 'TSUGARU.AOMORI.JP', + 'TSUIKI.FUKUOKA.JP', + 'TSUKIGATA.HOKKAIDO.JP', + 'TSUKIYONO.GUNMA.JP', + 'TSUKUBA.IBARAKI.JP', + 'TSUKUI.KANAGAWA.JP', + 'TSUKUMI.OITA.JP', + 'TSUMAGOI.GUNMA.JP', + 'TSUNAN.NIIGATA.JP', + 'TSUNO.KOCHI.JP', + 'TSUNO.MIYAZAKI.JP', + 'TSURU.YAMANASHI.JP', + 'TSURUGA.FUKUI.JP', + 'TSURUGASHIMA.SAITAMA.JP', + 'TSURUGI.ISHIKAWA.JP', + 'TSURUOKA.YAMAGATA.JP', + 'TSURUTA.AOMORI.JP', + 'TSUSHIMA.AICHI.JP', + 'TSUSHIMA.NAGASAKI.JP', + 'TSUWANO.SHIMANE.JP', + 'TSUYAMA.OKAYAMA.JP', + 'UBE.YAMAGUCHI.JP', + 'UCHIHARA.IBARAKI.JP', + 'UCHIKO.EHIME.JP', + 'UCHINADA.ISHIKAWA.JP', + 'UCHINOMI.KAGAWA.JP', + 'UDA.NARA.JP', + 'UDONO.MIE.JP', + 'UEDA.NAGANO.JP', + 'UENO.GUNMA.JP', + 'UENOHARA.YAMANASHI.JP', + 'UH-OH.JP', + 'UJI.KYOTO.JP', + 'UJIIE.TOCHIGI.JP', + 'UJITAWARA.KYOTO.JP', + 'UKI.KUMAMOTO.JP', + 'UKIHA.FUKUOKA.JP', + 'UMAJI.KOCHI.JP', + 'UMI.FUKUOKA.JP', + 'UNAZUKI.TOYAMA.JP', + 'UNDER.JP', + 'UNDO.JP', + 'UNNAN.SHIMANE.JP', + 'UNZEN.NAGASAKI.JP', + 'UONUMA.NIIGATA.JP', + 'UOZU.TOYAMA.JP', + 'UPPER.JP', + 'URAKAWA.HOKKAIDO.JP', + 'URASOE.OKINAWA.JP', + 'URAUSU.HOKKAIDO.JP', + 'URAWA.SAITAMA.JP', + 'URAYASU.CHIBA.JP', + 'URESHINO.MIE.JP', + 'URUMA.OKINAWA.JP', + 'URYU.HOKKAIDO.JP', + 'USA.OITA.JP', + 'USER.ASEINET.NE.JP', + 'USER.WEBACCEL.JP', + 'USERCONTENT.JP', + 'USHIKU.IBARAKI.JP', + 'USUI.FUKUOKA.JP', + 'USUKI.OITA.JP', + 'UTASHINAI.HOKKAIDO.JP', + 'UTAZU.KAGAWA.JP', + 'UTO.KUMAMOTO.JP', + 'UTSUNOMIYA.TOCHIGI.JP', + 'UWAJIMA.EHIME.JP', + 'VELVET.JP', + 'VERSE.JP', + 'VERSUS.JP', + 'VIVIAN.JP', + 'WADA.NAGANO.JP', + 'WAJIKI.TOKUSHIMA.JP', + 'WAJIMA.ISHIKAWA.JP', + 'WAKASA.FUKUI.JP', + 'WAKASA.TOTTORI.JP', + 'WAKAYAMA.JP', + 'WAKAYAMA.WAKAYAMA.JP', + 'WAKE.OKAYAMA.JP', + 'WAKKANAI.HOKKAIDO.JP', + 'WAKUYA.MIYAGI.JP', + 'WANOUCHI.GIFU.JP', + 'WARABI.SAITAMA.JP', + 'WASSAMU.HOKKAIDO.JP', + 'WATARAI.MIE.JP', + 'WATARI.MIYAGI.JP', + 'WATSON.JP', + 'WAZUKA.KYOTO.JP', + 'WEBLIKE.JP', + 'WEBSOZAI.JP', + 'WHITESNOW.JP', + 'WJG.JP', + 'XII.JP', + 'XN--0TRQ7P7NN.JP', + 'XN--1CTWO.JP', + 'XN--1LQS03N.JP', + 'XN--1LQS71D.JP', + 'XN--2M4A15E.JP', + 'XN--32VP30H.JP', + 'XN--4IT168D.JP', + 'XN--4IT797K.JP', + 'XN--4PVXS.JP', + 'XN--5JS045D.JP', + 'XN--5RTP49C.JP', + 'XN--5RTQ34K.JP', + 'XN--6BTW5A.JP', + 'XN--6ORX2R.JP', + 'XN--7T0A264C.JP', + 'XN--8LTR62K.JP', + 'XN--8PVR4U.JP', + 'XN--C3S14M.JP', + 'XN--D5QV7Z876C.JP', + 'XN--DJRS72D6UY.JP', + 'XN--DJTY4K.JP', + 'XN--EFVN9S.JP', + 'XN--EHQZ56N.JP', + 'XN--ELQQ16H.JP', + 'XN--F6QX53A.JP', + 'XN--K7YN95E.JP', + 'XN--KBRQ7O.JP', + 'XN--KLT787D.JP', + 'XN--KLTP7D.JP', + 'XN--KLTX9A.JP', + 'XN--KLTY5X.JP', + 'XN--MKRU45I.JP', + 'XN--NIT225K.JP', + 'XN--NTSO0IQX3A.JP', + 'XN--NTSQ17G.JP', + 'XN--PSSU33L.JP', + 'XN--QQQT11M.JP', + 'XN--RHT27Z.JP', + 'XN--RHT3D.JP', + 'XN--RHT61E.JP', + 'XN--RNY31H.JP', + 'XN--TOR131O.JP', + 'XN--UIST22H.JP', + 'XN--UISZ3G.JP', + 'XN--UUWU58A.JP', + 'XN--VGU402C.JP', + 'XN--ZBX025D.JP', + 'YABU.HYOGO.JP', + 'YABUKI.FUKUSHIMA.JP', + 'YACHIMATA.CHIBA.JP', + 'YACHIYO.CHIBA.JP', + 'YACHIYO.IBARAKI.JP', + 'YAESE.OKINAWA.JP', + 'YAHABA.IWATE.JP', + 'YAHIKO.NIIGATA.JP', + 'YAITA.TOCHIGI.JP', + 'YAIZU.SHIZUOKA.JP', + 'YAKAGE.OKAYAMA.JP', + 'YAKUMO.HOKKAIDO.JP', + 'YAKUMO.SHIMANE.JP', + 'YAMADA.FUKUOKA.JP', + 'YAMADA.IWATE.JP', + 'YAMADA.TOYAMA.JP', + 'YAMAGA.KUMAMOTO.JP', + 'YAMAGATA.GIFU.JP', + 'YAMAGATA.IBARAKI.JP', + 'YAMAGATA.JP', + 'YAMAGATA.NAGANO.JP', + 'YAMAGATA.YAMAGATA.JP', + 'YAMAGUCHI.JP', + 'YAMAKITA.KANAGAWA.JP', + 'YAMAMOTO.MIYAGI.JP', + 'YAMANAKAKO.YAMANASHI.JP', + 'YAMANASHI.JP', + 'YAMANASHI.YAMANASHI.JP', + 'YAMANOBE.YAMAGATA.JP', + 'YAMANOUCHI.NAGANO.JP', + 'YAMASHINA.KYOTO.JP', + 'YAMATO.FUKUSHIMA.JP', + 'YAMATO.KANAGAWA.JP', + 'YAMATO.KUMAMOTO.JP', + 'YAMATOKORIYAMA.NARA.JP', + 'YAMATOTAKADA.NARA.JP', + 'YAMATSURI.FUKUSHIMA.JP', + 'YAMAZOE.NARA.JP', + 'YAME.FUKUOKA.JP', + 'YANAGAWA.FUKUOKA.JP', + 'YANAIZU.FUKUSHIMA.JP', + 'YAO.OSAKA.JP', + 'YAOTSU.GIFU.JP', + 'YASAKA.NAGANO.JP', + 'YASHIO.SAITAMA.JP', + 'YASHIRO.HYOGO.JP', + 'YASU.SHIGA.JP', + 'YASUDA.KOCHI.JP', + 'YASUGI.SHIMANE.JP', + 'YASUOKA.NAGANO.JP', + 'YATOMI.AICHI.JP', + 'YATSUKA.SHIMANE.JP', + 'YATSUSHIRO.KUMAMOTO.JP', + 'YAWARA.IBARAKI.JP', + 'YAWATA.KYOTO.JP', + 'YAWATAHAMA.EHIME.JP', + 'YAZU.TOTTORI.JP', + 'YOICHI.HOKKAIDO.JP', + 'YOITA.NIIGATA.JP', + 'YOKA.HYOGO.JP', + 'YOKAICHIBA.CHIBA.JP', + 'YOKAWA.HYOGO.JP', + 'YOKKAICHI.MIE.JP', + 'YOKOSHIBAHIKARI.CHIBA.JP', + 'YOKOSUKA.KANAGAWA.JP', + 'YOKOTE.AKITA.JP', + 'YOKOZE.SAITAMA.JP', + 'YOMITAN.OKINAWA.JP', + 'YONABARU.OKINAWA.JP', + 'YONAGO.TOTTORI.JP', + 'YONAGUNI.OKINAWA.JP', + 'YONEZAWA.YAMAGATA.JP', + 'YONO.SAITAMA.JP', + 'YORII.SAITAMA.JP', + 'YORO.GIFU.JP', + 'YOSHIDA.SAITAMA.JP', + 'YOSHIDA.SHIZUOKA.JP', + 'YOSHIKAWA.SAITAMA.JP', + 'YOSHIMI.SAITAMA.JP', + 'YOSHINO.NARA.JP', + 'YOSHINOGARI.SAGA.JP', + 'YOSHIOKA.GUNMA.JP', + 'YOTSUKAIDO.CHIBA.JP', + 'YUASA.WAKAYAMA.JP', + 'YUFU.OITA.JP', + 'YUGAWA.FUKUSHIMA.JP', + 'YUGAWARA.KANAGAWA.JP', + 'YUKI.IBARAKI.JP', + 'YUKUHASHI.FUKUOKA.JP', + 'YURA.WAKAYAMA.JP', + 'YURIHONJO.AKITA.JP', + 'YUSUHARA.KOCHI.JP', + 'YUSUI.KAGOSHIMA.JP', + 'YUU.YAMAGUCHI.JP', + 'YUZA.YAMAGATA.JP', + 'YUZAWA.NIIGATA.JP', + 'ZAMA.KANAGAWA.JP', + 'ZAMAMI.OKINAWA.JP', + 'ZAO.MIYAGI.JP', + 'ZENTSUJI.KAGAWA.JP', + 'ZOMBIE.JP', + 'ZUSHI.KANAGAWA.JP', + ], + 'wildcards' => [ + 'KAWASAKI.JP', + 'KITAKYUSHU.JP', + 'KOBE.JP', + 'NAGOYA.JP', + 'SAPPORO.JP', + 'SENDAI.JP', + 'YOKOHAMA.JP', + ], ]; diff --git a/data/domain/public-suffix/KE.php b/data/domain/public-suffix/KE.php index 6a8d73bf..19cb4d46 100644 --- a/data/domain/public-suffix/KE.php +++ b/data/domain/public-suffix/KE.php @@ -2,13 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.KE', - 'CO.KE', - 'GO.KE', - 'INFO.KE', - 'ME.KE', - 'MOBI.KE', - 'NE.KE', - 'OR.KE', - 'SC.KE', + 'exceptions' => [], + 'rules' => [ + 'AC.KE', + 'CO.KE', + 'GO.KE', + 'INFO.KE', + 'ME.KE', + 'MOBI.KE', + 'NE.KE', + 'OR.KE', + 'SC.KE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/KG.php b/data/domain/public-suffix/KG.php index 6ff15457..dfa17486 100644 --- a/data/domain/public-suffix/KG.php +++ b/data/domain/public-suffix/KG.php @@ -2,10 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.KG', - 'EDU.KG', - 'GOV.KG', - 'MIL.KG', - 'NET.KG', - 'ORG.KG', + 'exceptions' => [], + 'rules' => [ + 'AE.KG', + 'COM.KG', + 'EDU.KG', + 'GOV.KG', + 'MIL.KG', + 'NET.KG', + 'ORG.KG', + 'US.KG', + 'XX.KG', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/KH.php b/data/domain/public-suffix/KH.php new file mode 100644 index 00000000..e716fd46 --- /dev/null +++ b/data/domain/public-suffix/KH.php @@ -0,0 +1,10 @@ + [], + 'rules' => [], + 'wildcards' => [ + 'KH', + ], +]; diff --git a/data/domain/public-suffix/KI.php b/data/domain/public-suffix/KI.php index 9f20ba6d..fd010e3a 100644 --- a/data/domain/public-suffix/KI.php +++ b/data/domain/public-suffix/KI.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BIZ.KI', - 'COM.KI', - 'EDU.KI', - 'GOV.KI', - 'INFO.KI', - 'NET.KI', - 'ORG.KI', + 'exceptions' => [], + 'rules' => [ + 'BIZ.KI', + 'COM.KI', + 'EDU.KI', + 'GOV.KI', + 'INFO.KI', + 'NET.KI', + 'ORG.KI', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/KM.php b/data/domain/public-suffix/KM.php index 56ae66f5..adcd3478 100644 --- a/data/domain/public-suffix/KM.php +++ b/data/domain/public-suffix/KM.php @@ -2,21 +2,25 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ASS.KM', - 'COM.KM', - 'EDU.KM', - 'GOV.KM', - 'MIL.KM', - 'NOM.KM', - 'ORG.KM', - 'PRD.KM', - 'TM.KM', - 'ASSO.KM', - 'COOP.KM', - 'GOUV.KM', - 'MEDECIN.KM', - 'NOTAIRES.KM', - 'PHARMACIENS.KM', - 'PRESSE.KM', - 'VETERINAIRE.KM', + 'exceptions' => [], + 'rules' => [ + 'ASS.KM', + 'ASSO.KM', + 'COM.KM', + 'COOP.KM', + 'EDU.KM', + 'GOUV.KM', + 'GOV.KM', + 'MEDECIN.KM', + 'MIL.KM', + 'NOM.KM', + 'NOTAIRES.KM', + 'ORG.KM', + 'PHARMACIENS.KM', + 'PRD.KM', + 'PRESSE.KM', + 'TM.KM', + 'VETERINAIRE.KM', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/KN.php b/data/domain/public-suffix/KN.php index 12d21d23..c7880162 100644 --- a/data/domain/public-suffix/KN.php +++ b/data/domain/public-suffix/KN.php @@ -2,8 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'EDU.KN', - 'GOV.KN', - 'NET.KN', - 'ORG.KN', + 'exceptions' => [], + 'rules' => [ + 'EDU.KN', + 'GOV.KN', + 'NET.KN', + 'ORG.KN', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/KP.php b/data/domain/public-suffix/KP.php index 3b3c0861..7eda8158 100644 --- a/data/domain/public-suffix/KP.php +++ b/data/domain/public-suffix/KP.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.KP', - 'EDU.KP', - 'GOV.KP', - 'ORG.KP', - 'REP.KP', - 'TRA.KP', + 'exceptions' => [], + 'rules' => [ + 'COM.KP', + 'EDU.KP', + 'GOV.KP', + 'ORG.KP', + 'REP.KP', + 'TRA.KP', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/KR.php b/data/domain/public-suffix/KR.php index 2fe97333..ed3041b8 100644 --- a/data/domain/public-suffix/KR.php +++ b/data/domain/public-suffix/KR.php @@ -2,37 +2,47 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.KR', - 'AI.KR', - 'CO.KR', - 'ES.KR', - 'GO.KR', - 'HS.KR', - 'IO.KR', - 'IT.KR', - 'KG.KR', - 'ME.KR', - 'MIL.KR', - 'MS.KR', - 'NE.KR', - 'OR.KR', - 'PE.KR', - 'RE.KR', - 'SC.KR', - 'BUSAN.KR', - 'CHUNGBUK.KR', - 'CHUNGNAM.KR', - 'DAEGU.KR', - 'DAEJEON.KR', - 'GANGWON.KR', - 'GWANGJU.KR', - 'GYEONGBUK.KR', - 'GYEONGGI.KR', - 'GYEONGNAM.KR', - 'INCHEON.KR', - 'JEJU.KR', - 'JEONBUK.KR', - 'JEONNAM.KR', - 'SEOUL.KR', - 'ULSAN.KR', + 'exceptions' => [], + 'rules' => [ + 'AC.KR', + 'AI.KR', + 'BUSAN.KR', + 'C01.KR', + 'CHUNGBUK.KR', + 'CHUNGNAM.KR', + 'CO.KR', + 'DAEGU.KR', + 'DAEJEON.KR', + 'ELIV-API.KR', + 'ELIV-CDN.KR', + 'ELIV-DNS.KR', + 'ES.KR', + 'GANGWON.KR', + 'GO.KR', + 'GWANGJU.KR', + 'GYEONGBUK.KR', + 'GYEONGGI.KR', + 'GYEONGNAM.KR', + 'HS.KR', + 'INCHEON.KR', + 'IO.KR', + 'IT.KR', + 'JEJU.KR', + 'JEONBUK.KR', + 'JEONNAM.KR', + 'KG.KR', + 'ME.KR', + 'MIL.KR', + 'MMV.KR', + 'MS.KR', + 'NE.KR', + 'OR.KR', + 'PE.KR', + 'RE.KR', + 'SC.KR', + 'SEOUL.KR', + 'ULSAN.KR', + 'VKI.KR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/KRD.php b/data/domain/public-suffix/KRD.php new file mode 100644 index 00000000..71b55549 --- /dev/null +++ b/data/domain/public-suffix/KRD.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'CO.KRD', + 'EDU.KRD', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/KW.php b/data/domain/public-suffix/KW.php index 11ff2488..fda4977e 100644 --- a/data/domain/public-suffix/KW.php +++ b/data/domain/public-suffix/KW.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.KW', - 'EDU.KW', - 'EMB.KW', - 'GOV.KW', - 'IND.KW', - 'NET.KW', - 'ORG.KW', + 'exceptions' => [], + 'rules' => [ + 'COM.KW', + 'EDU.KW', + 'EMB.KW', + 'GOV.KW', + 'IND.KW', + 'NET.KW', + 'ORG.KW', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/KY.php b/data/domain/public-suffix/KY.php index fce211ac..e2c96c1e 100644 --- a/data/domain/public-suffix/KY.php +++ b/data/domain/public-suffix/KY.php @@ -2,8 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.KY', - 'EDU.KY', - 'NET.KY', - 'ORG.KY', + 'exceptions' => [], + 'rules' => [ + 'COM.KY', + 'EDU.KY', + 'NET.KY', + 'ORG.KY', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/KZ.php b/data/domain/public-suffix/KZ.php index f47314c3..316654a5 100644 --- a/data/domain/public-suffix/KZ.php +++ b/data/domain/public-suffix/KZ.php @@ -2,10 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.KZ', - 'EDU.KZ', - 'GOV.KZ', - 'MIL.KZ', - 'NET.KZ', - 'ORG.KZ', + 'exceptions' => [], + 'rules' => [ + 'COM.KZ', + 'EDU.KZ', + 'GOV.KZ', + 'JCLOUD.KZ', + 'MIL.KZ', + 'NET.KZ', + 'ORG.KZ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/LA.php b/data/domain/public-suffix/LA.php index 232d3186..ae95b8a0 100644 --- a/data/domain/public-suffix/LA.php +++ b/data/domain/public-suffix/LA.php @@ -2,12 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.LA', - 'EDU.LA', - 'GOV.LA', - 'INFO.LA', - 'INT.LA', - 'NET.LA', - 'ORG.LA', - 'PER.LA', + 'exceptions' => [], + 'rules' => [ + 'BNR.LA', + 'COM.LA', + 'EDU.LA', + 'GOV.LA', + 'INFO.LA', + 'INT.LA', + 'NET.LA', + 'ORG.LA', + 'PER.LA', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/LB.php b/data/domain/public-suffix/LB.php index 5199df4a..3ad5daee 100644 --- a/data/domain/public-suffix/LB.php +++ b/data/domain/public-suffix/LB.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.LB', - 'EDU.LB', - 'GOV.LB', - 'NET.LB', - 'ORG.LB', + 'exceptions' => [], + 'rules' => [ + 'COM.LB', + 'EDU.LB', + 'GOV.LB', + 'NET.LB', + 'ORG.LB', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/LC.php b/data/domain/public-suffix/LC.php index 352f7151..7f4c001d 100644 --- a/data/domain/public-suffix/LC.php +++ b/data/domain/public-suffix/LC.php @@ -2,10 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.LC', - 'COM.LC', - 'EDU.LC', - 'GOV.LC', - 'NET.LC', - 'ORG.LC', + 'exceptions' => [], + 'rules' => [ + 'CO.LC', + 'COM.LC', + 'EDU.LC', + 'GOV.LC', + 'NET.LC', + 'ORG.LC', + 'OY.LC', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/LINK.php b/data/domain/public-suffix/LINK.php new file mode 100644 index 00000000..dba33088 --- /dev/null +++ b/data/domain/public-suffix/LINK.php @@ -0,0 +1,20 @@ + [], + 'rules' => [ + 'CYON.LINK', + 'IPFS.NFTSTORAGE.LINK', + 'IPFS.STORACHA.LINK', + 'IPFS.W3S.LINK', + 'JOINMC.LINK', + 'KEENETIC.LINK', + 'MYFRITZ.LINK', + 'MYPEP.LINK', + ], + 'wildcards' => [ + 'DWEB.LINK', + 'INBROWSER.LINK', + ], +]; diff --git a/data/domain/public-suffix/LIVE.php b/data/domain/public-suffix/LIVE.php new file mode 100644 index 00000000..4a9c6735 --- /dev/null +++ b/data/domain/public-suffix/LIVE.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'AEM.LIVE', + 'HLX.LIVE', + ], + 'wildcards' => [ + 'EWP.LIVE', + ], +]; diff --git a/data/domain/public-suffix/LK.php b/data/domain/public-suffix/LK.php index 9f04d746..269472f8 100644 --- a/data/domain/public-suffix/LK.php +++ b/data/domain/public-suffix/LK.php @@ -2,19 +2,23 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.LK', - 'ASSN.LK', - 'COM.LK', - 'EDU.LK', - 'GOV.LK', - 'GRP.LK', - 'HOTEL.LK', - 'INT.LK', - 'LTD.LK', - 'NET.LK', - 'NGO.LK', - 'ORG.LK', - 'SCH.LK', - 'SOC.LK', - 'WEB.LK', + 'exceptions' => [], + 'rules' => [ + 'AC.LK', + 'ASSN.LK', + 'COM.LK', + 'EDU.LK', + 'GOV.LK', + 'GRP.LK', + 'HOTEL.LK', + 'INT.LK', + 'LTD.LK', + 'NET.LK', + 'NGO.LK', + 'ORG.LK', + 'SCH.LK', + 'SOC.LK', + 'WEB.LK', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/LOL.php b/data/domain/public-suffix/LOL.php new file mode 100644 index 00000000..a9b52c31 --- /dev/null +++ b/data/domain/public-suffix/LOL.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'OMG.LOL', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/LR.php b/data/domain/public-suffix/LR.php index 0472cdc9..ed8ea0d5 100644 --- a/data/domain/public-suffix/LR.php +++ b/data/domain/public-suffix/LR.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.LR', - 'EDU.LR', - 'GOV.LR', - 'NET.LR', - 'ORG.LR', + 'exceptions' => [], + 'rules' => [ + 'COM.LR', + 'EDU.LR', + 'GOV.LR', + 'NET.LR', + 'ORG.LR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/LS.php b/data/domain/public-suffix/LS.php index 5a2cba91..6e53c4f1 100644 --- a/data/domain/public-suffix/LS.php +++ b/data/domain/public-suffix/LS.php @@ -2,13 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.LS', - 'BIZ.LS', - 'CO.LS', - 'EDU.LS', - 'GOV.LS', - 'INFO.LS', - 'NET.LS', - 'ORG.LS', - 'SC.LS', + 'exceptions' => [], + 'rules' => [ + 'AC.LS', + 'BIZ.LS', + 'CO.LS', + 'EDU.LS', + 'GOV.LS', + 'INFO.LS', + 'NET.LS', + 'ORG.LS', + 'SC.LS', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/LT.php b/data/domain/public-suffix/LT.php index 269d1384..9123efd2 100644 --- a/data/domain/public-suffix/LT.php +++ b/data/domain/public-suffix/LT.php @@ -2,5 +2,9 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.LT', + 'exceptions' => [], + 'rules' => [ + 'GOV.LT', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/LU.php b/data/domain/public-suffix/LU.php new file mode 100644 index 00000000..20ab744e --- /dev/null +++ b/data/domain/public-suffix/LU.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + '123WEBSITE.LU', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/LV.php b/data/domain/public-suffix/LV.php index 24817cf9..790a6883 100644 --- a/data/domain/public-suffix/LV.php +++ b/data/domain/public-suffix/LV.php @@ -2,13 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ASN.LV', - 'COM.LV', - 'CONF.LV', - 'EDU.LV', - 'GOV.LV', - 'ID.LV', - 'MIL.LV', - 'NET.LV', - 'ORG.LV', + 'exceptions' => [], + 'rules' => [ + 'ASN.LV', + 'COM.LV', + 'CONF.LV', + 'EDU.LV', + 'GOV.LV', + 'ID.LV', + 'MIL.LV', + 'NET.LV', + 'ORG.LV', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/LY.php b/data/domain/public-suffix/LY.php index 4e73be48..fac48817 100644 --- a/data/domain/public-suffix/LY.php +++ b/data/domain/public-suffix/LY.php @@ -2,13 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.LY', - 'EDU.LY', - 'GOV.LY', - 'ID.LY', - 'MED.LY', - 'NET.LY', - 'ORG.LY', - 'PLC.LY', - 'SCH.LY', + 'exceptions' => [], + 'rules' => [ + 'COM.LY', + 'EDU.LY', + 'GOV.LY', + 'ID.LY', + 'MED.LY', + 'NET.LY', + 'ORG.LY', + 'PLC.LY', + 'SCH.LY', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MA.php b/data/domain/public-suffix/MA.php index aa4a5258..b959de87 100644 --- a/data/domain/public-suffix/MA.php +++ b/data/domain/public-suffix/MA.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.MA', - 'CO.MA', - 'GOV.MA', - 'NET.MA', - 'ORG.MA', - 'PRESS.MA', + 'exceptions' => [], + 'rules' => [ + 'AC.MA', + 'CO.MA', + 'GOV.MA', + 'NET.MA', + 'ORG.MA', + 'PRESS.MA', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MC.php b/data/domain/public-suffix/MC.php index fc511e5f..1f3c663e 100644 --- a/data/domain/public-suffix/MC.php +++ b/data/domain/public-suffix/MC.php @@ -2,6 +2,10 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ASSO.MC', - 'TM.MC', + 'exceptions' => [], + 'rules' => [ + 'ASSO.MC', + 'TM.MC', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MD.php b/data/domain/public-suffix/MD.php new file mode 100644 index 00000000..18deaf24 --- /dev/null +++ b/data/domain/public-suffix/MD.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'IR.MD', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/ME.php b/data/domain/public-suffix/ME.php index b023d19b..c54f8648 100644 --- a/data/domain/public-suffix/ME.php +++ b/data/domain/public-suffix/ME.php @@ -2,12 +2,41 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.ME', - 'CO.ME', - 'EDU.ME', - 'GOV.ME', - 'ITS.ME', - 'NET.ME', - 'ORG.ME', - 'PRIV.ME', + 'exceptions' => [], + 'rules' => [ + 'AC.ME', + 'BARSY.ME', + 'BRASILIA.ME', + 'C66.ME', + 'CO.ME', + 'CRAFT.ME', + 'DDNS.ME', + 'DISKSTATION.ME', + 'DNSFOR.ME', + 'DSCLOUD.ME', + 'EDGESTACK.ME', + 'EDU.ME', + 'FILEGEAR-SG.ME', + 'FILEGEAR.ME', + 'GOV.ME', + 'HOPTO.ME', + 'I234.ME', + 'ITS.ME', + 'LOGINTO.ME', + 'LOHMUS.ME', + 'MCDIR.ME', + 'MYDS.ME', + 'NET.ME', + 'NOHOST.ME', + 'NOIP.ME', + 'ORG.ME', + 'PRIV.ME', + 'SITE.TRANSIP.ME', + 'SOUNDCAST.ME', + 'SYNOLOGY.ME', + 'TCP4.ME', + 'VP4.ME', + 'WEBHOP.ME', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MEDIA.php b/data/domain/public-suffix/MEDIA.php new file mode 100644 index 00000000..0eacc546 --- /dev/null +++ b/data/domain/public-suffix/MEDIA.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'FRAMER.MEDIA', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/MENU.php b/data/domain/public-suffix/MENU.php new file mode 100644 index 00000000..0c67033f --- /dev/null +++ b/data/domain/public-suffix/MENU.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'BARSY.MENU', + 'BARSYONLINE.MENU', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/MG.php b/data/domain/public-suffix/MG.php index 54c244e5..48bbe268 100644 --- a/data/domain/public-suffix/MG.php +++ b/data/domain/public-suffix/MG.php @@ -2,12 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.MG', - 'COM.MG', - 'EDU.MG', - 'GOV.MG', - 'MIL.MG', - 'NOM.MG', - 'ORG.MG', - 'PRD.MG', + 'exceptions' => [], + 'rules' => [ + 'CO.MG', + 'COM.MG', + 'EDU.MG', + 'GOV.MG', + 'MIL.MG', + 'NOM.MG', + 'ORG.MG', + 'PRD.MG', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MK.php b/data/domain/public-suffix/MK.php index b554127d..73e30362 100644 --- a/data/domain/public-suffix/MK.php +++ b/data/domain/public-suffix/MK.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.MK', - 'EDU.MK', - 'GOV.MK', - 'INF.MK', - 'NAME.MK', - 'NET.MK', - 'ORG.MK', + 'exceptions' => [], + 'rules' => [ + 'COM.MK', + 'EDU.MK', + 'GOV.MK', + 'INF.MK', + 'NAME.MK', + 'NET.MK', + 'ORG.MK', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ML.php b/data/domain/public-suffix/ML.php index ceedc28e..ad8c691d 100644 --- a/data/domain/public-suffix/ML.php +++ b/data/domain/public-suffix/ML.php @@ -2,17 +2,21 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.ML', - 'ART.ML', - 'ASSO.ML', - 'COM.ML', - 'EDU.ML', - 'GOUV.ML', - 'GOV.ML', - 'INFO.ML', - 'INST.ML', - 'NET.ML', - 'ORG.ML', - 'PR.ML', - 'PRESSE.ML', + 'exceptions' => [], + 'rules' => [ + 'AC.ML', + 'ART.ML', + 'ASSO.ML', + 'COM.ML', + 'EDU.ML', + 'GOUV.ML', + 'GOV.ML', + 'INFO.ML', + 'INST.ML', + 'NET.ML', + 'ORG.ML', + 'PR.ML', + 'PRESSE.ML', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MM.php b/data/domain/public-suffix/MM.php new file mode 100644 index 00000000..f1eeeda7 --- /dev/null +++ b/data/domain/public-suffix/MM.php @@ -0,0 +1,10 @@ + [], + 'rules' => [], + 'wildcards' => [ + 'MM', + ], +]; diff --git a/data/domain/public-suffix/MN.php b/data/domain/public-suffix/MN.php index 1fee8767..7a5dabde 100644 --- a/data/domain/public-suffix/MN.php +++ b/data/domain/public-suffix/MN.php @@ -2,7 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'EDU.MN', - 'GOV.MN', - 'ORG.MN', + 'exceptions' => [], + 'rules' => [ + 'EDU.MN', + 'GOV.MN', + 'NYC.MN', + 'ORG.MN', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MO.php b/data/domain/public-suffix/MO.php index 61a3fb9b..38a47106 100644 --- a/data/domain/public-suffix/MO.php +++ b/data/domain/public-suffix/MO.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.MO', - 'EDU.MO', - 'GOV.MO', - 'NET.MO', - 'ORG.MO', + 'exceptions' => [], + 'rules' => [ + 'COM.MO', + 'EDU.MO', + 'GOV.MO', + 'NET.MO', + 'ORG.MO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MOBI.php b/data/domain/public-suffix/MOBI.php new file mode 100644 index 00000000..544e5264 --- /dev/null +++ b/data/domain/public-suffix/MOBI.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'BARSY.MOBI', + 'DSCLOUD.MOBI', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/MP.php b/data/domain/public-suffix/MP.php new file mode 100644 index 00000000..b3c0ba69 --- /dev/null +++ b/data/domain/public-suffix/MP.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'JU.MP', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/MR.php b/data/domain/public-suffix/MR.php index 0f8f3f2f..033877a5 100644 --- a/data/domain/public-suffix/MR.php +++ b/data/domain/public-suffix/MR.php @@ -2,5 +2,9 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.MR', + 'exceptions' => [], + 'rules' => [ + 'GOV.MR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MS.php b/data/domain/public-suffix/MS.php index 08314bba..6ecf1d64 100644 --- a/data/domain/public-suffix/MS.php +++ b/data/domain/public-suffix/MS.php @@ -2,9 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.MS', - 'EDU.MS', - 'GOV.MS', - 'NET.MS', - 'ORG.MS', + 'exceptions' => [], + 'rules' => [ + 'COM.MS', + 'EDU.MS', + 'GOV.MS', + 'MINISITE.MS', + 'NET.MS', + 'ORG.MS', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MT.php b/data/domain/public-suffix/MT.php index 4fe9d072..4eb591d7 100644 --- a/data/domain/public-suffix/MT.php +++ b/data/domain/public-suffix/MT.php @@ -2,8 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.MT', - 'EDU.MT', - 'NET.MT', - 'ORG.MT', + 'exceptions' => [], + 'rules' => [ + 'COM.MT', + 'EDU.MT', + 'NET.MT', + 'ORG.MT', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MU.php b/data/domain/public-suffix/MU.php index 2b1c826c..afcbc0ad 100644 --- a/data/domain/public-suffix/MU.php +++ b/data/domain/public-suffix/MU.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.MU', - 'CO.MU', - 'COM.MU', - 'GOV.MU', - 'NET.MU', - 'OR.MU', - 'ORG.MU', + 'exceptions' => [], + 'rules' => [ + 'AC.MU', + 'CO.MU', + 'COM.MU', + 'GOV.MU', + 'NET.MU', + 'OR.MU', + 'ORG.MU', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MV.php b/data/domain/public-suffix/MV.php index bc00a423..5207179e 100644 --- a/data/domain/public-suffix/MV.php +++ b/data/domain/public-suffix/MV.php @@ -2,18 +2,22 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AERO.MV', - 'BIZ.MV', - 'COM.MV', - 'COOP.MV', - 'EDU.MV', - 'GOV.MV', - 'INFO.MV', - 'INT.MV', - 'MIL.MV', - 'MUSEUM.MV', - 'NAME.MV', - 'NET.MV', - 'ORG.MV', - 'PRO.MV', + 'exceptions' => [], + 'rules' => [ + 'AERO.MV', + 'BIZ.MV', + 'COM.MV', + 'COOP.MV', + 'EDU.MV', + 'GOV.MV', + 'INFO.MV', + 'INT.MV', + 'MIL.MV', + 'MUSEUM.MV', + 'NAME.MV', + 'NET.MV', + 'ORG.MV', + 'PRO.MV', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MW.php b/data/domain/public-suffix/MW.php index e8f7ba7d..d141f957 100644 --- a/data/domain/public-suffix/MW.php +++ b/data/domain/public-suffix/MW.php @@ -2,14 +2,18 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.MW', - 'BIZ.MW', - 'CO.MW', - 'COM.MW', - 'COOP.MW', - 'EDU.MW', - 'GOV.MW', - 'INT.MW', - 'NET.MW', - 'ORG.MW', + 'exceptions' => [], + 'rules' => [ + 'AC.MW', + 'BIZ.MW', + 'CO.MW', + 'COM.MW', + 'COOP.MW', + 'EDU.MW', + 'GOV.MW', + 'INT.MW', + 'NET.MW', + 'ORG.MW', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MX.php b/data/domain/public-suffix/MX.php index a61cae2e..89454a84 100644 --- a/data/domain/public-suffix/MX.php +++ b/data/domain/public-suffix/MX.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.MX', - 'EDU.MX', - 'GOB.MX', - 'NET.MX', - 'ORG.MX', + 'exceptions' => [], + 'rules' => [ + 'COM.MX', + 'EDU.MX', + 'GOB.MX', + 'NET.MX', + 'ORG.MX', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MY.php b/data/domain/public-suffix/MY.php index fbf4fb3a..c9881eba 100644 --- a/data/domain/public-suffix/MY.php +++ b/data/domain/public-suffix/MY.php @@ -2,12 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BIZ.MY', - 'COM.MY', - 'EDU.MY', - 'GOV.MY', - 'MIL.MY', - 'NAME.MY', - 'NET.MY', - 'ORG.MY', + 'exceptions' => [], + 'rules' => [ + 'BIZ.MY', + 'COM.MY', + 'EDU.MY', + 'GOV.MY', + 'MIL.MY', + 'NAME.MY', + 'NET.MY', + 'ORG.MY', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/MZ.php b/data/domain/public-suffix/MZ.php index 60ac6d5b..35d29ec8 100644 --- a/data/domain/public-suffix/MZ.php +++ b/data/domain/public-suffix/MZ.php @@ -2,12 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.MZ', - 'ADV.MZ', - 'CO.MZ', - 'EDU.MZ', - 'GOV.MZ', - 'MIL.MZ', - 'NET.MZ', - 'ORG.MZ', + 'exceptions' => [], + 'rules' => [ + 'AC.MZ', + 'ADV.MZ', + 'CO.MZ', + 'EDU.MZ', + 'GOV.MZ', + 'MIL.MZ', + 'NET.MZ', + 'ORG.MZ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/NA.php b/data/domain/public-suffix/NA.php index cccc862a..0afa5ce9 100644 --- a/data/domain/public-suffix/NA.php +++ b/data/domain/public-suffix/NA.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ALT.NA', - 'CO.NA', - 'COM.NA', - 'GOV.NA', - 'NET.NA', - 'ORG.NA', + 'exceptions' => [], + 'rules' => [ + 'ALT.NA', + 'CO.NA', + 'COM.NA', + 'GOV.NA', + 'NET.NA', + 'ORG.NA', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/NAME.php b/data/domain/public-suffix/NAME.php new file mode 100644 index 00000000..caa783e5 --- /dev/null +++ b/data/domain/public-suffix/NAME.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'FORGOT.HER.NAME', + 'FORGOT.HIS.NAME', + 'ISPMANAGER.NAME', + 'KEENETIC.NAME', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/NC.php b/data/domain/public-suffix/NC.php index 43e6f73f..6cca605e 100644 --- a/data/domain/public-suffix/NC.php +++ b/data/domain/public-suffix/NC.php @@ -2,6 +2,10 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ASSO.NC', - 'NOM.NC', + 'exceptions' => [], + 'rules' => [ + 'ASSO.NC', + 'NOM.NC', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/NET.php b/data/domain/public-suffix/NET.php new file mode 100644 index 00000000..8d192b2e --- /dev/null +++ b/data/domain/public-suffix/NET.php @@ -0,0 +1,254 @@ + [], + 'rules' => [ + '1.AZURESTATICAPPS.NET', + '2.AZURESTATICAPPS.NET', + '3.AZURESTATICAPPS.NET', + '4.AZURESTATICAPPS.NET', + '5.AZURESTATICAPPS.NET', + '6.AZURESTATICAPPS.NET', + '7.AZURESTATICAPPS.NET', + 'A.PROD.FASTLY.NET', + 'A.SSL.FASTLY.NET', + 'ADOBEAEMCLOUD.NET', + 'ADOBEIO-STATIC.NET', + 'ADOBEIORUNTIME.NET', + 'AKADNS.NET', + 'AKAMAI-STAGING.NET', + 'AKAMAI.NET', + 'AKAMAIEDGE-STAGING.NET', + 'AKAMAIEDGE.NET', + 'AKAMAIHD-STAGING.NET', + 'AKAMAIHD.NET', + 'AKAMAIORIGIN-STAGING.NET', + 'AKAMAIORIGIN.NET', + 'AKAMAIZED-STAGING.NET', + 'AKAMAIZED.NET', + 'ALWAYSDATA.NET', + 'APPS-1AND1.NET', + 'APPUDO.NET', + 'AT-BAND-CAMP.NET', + 'ATL.JELASTIC.VPS-HOST.NET', + 'AZURE-API.NET', + 'AZURE-MOBILE.NET', + 'AZUREEDGE.NET', + 'AZUREFD.NET', + 'AZURESTATICAPPS.NET', + 'AZUREWEBSITES.NET', + 'B.SSL.FASTLY.NET', + 'BARSY.NET', + 'BLACKBAUDCDN.NET', + 'BLOB.CORE.USGOVCLOUDAPI.NET', + 'BLOB.CORE.WINDOWS.NET', + 'BLOGDNS.NET', + 'BOOMLA.NET', + 'BOTDASH.NET', + 'BOUNCEME.NET', + 'BPLACED.NET', + 'BROKE-IT.NET', + 'BUYSHOUSES.NET', + 'CASACAM.NET', + 'CDN-EDGES.NET', + 'CDN.CLOUDFLARE.NET', + 'CDN.CLOUDFLAREANYCAST.NET', + 'CDN.CLOUDFLARECN.NET', + 'CDN.CLOUDFLAREGLOBAL.NET', + 'CDN.PROD.ATLASSIAN-DEV.NET', + 'CDN77-SSL.NET', + 'CENTRALUS.AZURESTATICAPPS.NET', + 'CHANNELSDVR.NET', + 'CLICKRISING.NET', + 'CLOUDACCESS.NET', + 'CLOUDAPP.NET', + 'CLOUDFLARE.NET', + 'CLOUDFRONT.NET', + 'CLOUDFUNCTIONS.NET', + 'CLOUDJIFFY.NET', + 'CLOUDYCLUSTER.NET', + 'COMMUNITY-PRO.NET', + 'CTFCLOUD.NET', + 'DATTOLOCAL.NET', + 'DDNS-IP.NET', + 'DDNS.NET', + 'DE5.NET', + 'DEBIAN.NET', + 'DEFINIMA.NET', + 'DENO.NET', + 'DNS-CLOUD.NET', + 'DNS-DYNAMIC.NET', + 'DNSALIAS.NET', + 'DNSDOJO.NET', + 'DNSUP.NET', + 'DOES-IT.NET', + 'DONTEXIST.NET', + 'DSMYNAS.NET', + 'DYNALIAS.NET', + 'DYNATHOME.NET', + 'DYNU.NET', + 'DYNUDDNS.NET', + 'DYNV6.NET', + 'EASTASIA.AZURESTATICAPPS.NET', + 'EASTUS2.AZURESTATICAPPS.NET', + 'EATING-ORGANIC.NET', + 'EDGEKEY-STAGING.NET', + 'EDGEKEY.NET', + 'EDGESUITE-STAGING.NET', + 'EDGESUITE.NET', + 'ENDOFINTERNET.NET', + 'FAMILYDS.NET', + 'FASTLYLB.NET', + 'FESTE-IP.NET', + 'FILE.CORE.USGOVCLOUDAPI.NET', + 'FILE.CORE.WINDOWS.NET', + 'FIREWALL-GATEWAY.NET', + 'FR-1.PAAS.MASSIVEGRID.NET', + 'FRA1-DE.CLOUDJIFFY.NET', + 'FREETLS.FASTLY.NET', + 'FROM-AZ.NET', + 'FROM-CO.NET', + 'FROM-LA.NET', + 'FROM-NY.NET', + 'GB.NET', + 'GETS-IT.NET', + 'GGFF.NET', + 'GLOBAL.PROD.FASTLY.NET', + 'GLOBAL.SSL.FASTLY.NET', + 'GRAFANA-DEV.NET', + 'HAM-RADIO-OP.NET', + 'HETEML.NET', + 'HICAM.NET', + 'HOMEFTP.NET', + 'HOMEIP.NET', + 'HOMELINUX.NET', + 'HOMEUNIX.NET', + 'HU.NET', + 'IN-DSL.NET', + 'IN-THE-BAND.NET', + 'IN-VPN.NET', + 'IN.NET', + 'IOBB.NET', + 'IPIFONY.NET', + 'IS-A-CHEF.NET', + 'IS-A-GEEK.NET', + 'ISA-GEEK.NET', + 'J.SCALEFORCE.NET', + 'JELASTIC.SAVEINCLOUD.NET', + 'JLS-STO1.ELASTX.NET', + 'JLS-STO2.ELASTX.NET', + 'JLS-STO3.ELASTX.NET', + 'JP.NET', + 'KEYWORD-ON.NET', + 'KICKS-ASS.NET', + 'KINGHOST.NET', + 'KNX-SERVER.NET', + 'KRELLIAN.NET', + 'LIVE-ON.NET', + 'LOCALCERT.NET', + 'LON-1.PAAS.MASSIVEGRID.NET', + 'LON-2.PAAS.MASSIVEGRID.NET', + 'LUYANI.NET', + 'MAFELO.NET', + 'MAP.FASTLY.NET', + 'MAP.FASTLYLB.NET', + 'MEINFORUM.NET', + 'MEMSET.NET', + 'MOONSCALE.NET', + 'MYAMAZE.NET', + 'MYDATTO.NET', + 'MYDISSENT.NET', + 'MYEFFECT.NET', + 'MYFRITZ.NET', + 'MYMEDIAPC.NET', + 'MYPSX.NET', + 'MYRADWEB.NET', + 'MYSECURITYCAMERA.NET', + 'MYSPREADSHOP.NET', + 'MYSYNOLOGY.NET', + 'NHLFAN.NET', + 'NJS.JELASTIC.VPS-HOST.NET', + 'NO-IP.NET', + 'NORDESTE-IDC.SAVEINCLOUD.NET', + 'NOW-DNS.NET', + 'NY-1.PAAS.MASSIVEGRID.NET', + 'NY-2.PAAS.MASSIVEGRID.NET', + 'OFFICE-ON-THE.NET', + 'ONINFERNO.NET', + 'OPIK.NET', + 'OWNIP.NET', + 'PAGES.TORPROJECT.NET', + 'PGAFAN.NET', + 'PODZONE.NET', + 'PRIVATIZEHEALTHINSURANCE.NET', + 'R.CDN77.NET', + 'RACKMAZE.NET', + 'REDIRECTME.NET', + 'RESERVE-ONLINE.NET', + 'RIC.JELASTIC.VPS-HOST.NET', + 'ROUTINGTHECLOUD.NET', + 'RU.NET', + 'SANDBOX.DENO.NET', + 'SCHOKOKEKS.NET', + 'SCRAPPER-SITE.NET', + 'SE.NET', + 'SEIDAT.NET', + 'SELFIP.NET', + 'SELLS-IT.NET', + 'SENSEERING.NET', + 'SERVEBBS.NET', + 'SERVEBLOG.NET', + 'SERVEFTP.NET', + 'SERVEMINECRAFT.NET', + 'SERVER-ON.NET', + 'SERVICEBUS.USGOVCLOUDAPI.NET', + 'SERVICEBUS.WINDOWS.NET', + 'SG-1.PAAS.MASSIVEGRID.NET', + 'SHOPSELECT.NET', + 'SITELEAF.NET', + 'SN.MYNETNAME.NET', + 'SOC.SRCF.NET', + 'SPRYT.NET', + 'SQUARE7.NET', + 'SQUARES.NET', + 'STATIC-ACCESS.NET', + 'STORAGE.YANDEXCLOUD.NET', + 'SUBSC-PAY.NET', + 'SUPABASE.NET', + 'SYTES.NET', + 'THRUHERE.NET', + 'TORPROJECT.NET', + 'TRAFFICMANAGER.NET', + 'TS.NET', + 'TUNNELMOLE.NET', + 'TWMAIL.NET', + 'U.CHANNELSDVR.NET', + 'UK.NET', + 'UNI5.NET', + 'USER.SRCF.NET', + 'USGOVCLOUDAPP.NET', + 'USGOVTRAFFICMANAGER.NET', + 'VPNDNS.NET', + 'VPS-HOST.NET', + 'VUSERCONTENT.NET', + 'WEB.CORE.USGOVCLOUDAPI.NET', + 'WEB.CORE.WINDOWS.NET', + 'WEBHOP.NET', + 'WEBSITE.YANDEXCLOUD.NET', + 'WEST1-US.CLOUDJIFFY.NET', + 'WESTEUROPE.AZURESTATICAPPS.NET', + 'WESTUS2.AZURESTATICAPPS.NET', + 'YANDEXCLOUD.NET', + 'ZA.NET', + 'ZABC.NET', + ], + 'wildcards' => [ + 'C.TS.NET', + 'CRYPTONOMIC.NET', + 'HOSTING.OVH.NET', + 'ICP.NET', + 'LOCALTO.NET', + 'WEBPAAS.OVH.NET', + ], +]; diff --git a/data/domain/public-suffix/NETWORK.php b/data/domain/public-suffix/NETWORK.php new file mode 100644 index 00000000..f4754e4f --- /dev/null +++ b/data/domain/public-suffix/NETWORK.php @@ -0,0 +1,17 @@ + [], + 'rules' => [ + 'AEM.NETWORK', + 'APPWRITE.NETWORK', + 'ARVO.NETWORK', + 'AZIMUTH.NETWORK', + 'CO.NETWORK', + 'TLON.NETWORK', + ], + 'wildcards' => [ + 'ALCES.NETWORK', + ], +]; diff --git a/data/domain/public-suffix/NEWS.php b/data/domain/public-suffix/NEWS.php new file mode 100644 index 00000000..64486a00 --- /dev/null +++ b/data/domain/public-suffix/NEWS.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'NOTICEABLE.NEWS', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/NF.php b/data/domain/public-suffix/NF.php index 07161327..595a2738 100644 --- a/data/domain/public-suffix/NF.php +++ b/data/domain/public-suffix/NF.php @@ -2,14 +2,18 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ARTS.NF', - 'COM.NF', - 'FIRM.NF', - 'INFO.NF', - 'NET.NF', - 'OTHER.NF', - 'PER.NF', - 'REC.NF', - 'STORE.NF', - 'WEB.NF', + 'exceptions' => [], + 'rules' => [ + 'ARTS.NF', + 'COM.NF', + 'FIRM.NF', + 'INFO.NF', + 'NET.NF', + 'OTHER.NF', + 'PER.NF', + 'REC.NF', + 'STORE.NF', + 'WEB.NF', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/NG.php b/data/domain/public-suffix/NG.php index ff215267..7d3ae31e 100644 --- a/data/domain/public-suffix/NG.php +++ b/data/domain/public-suffix/NG.php @@ -2,14 +2,30 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.NG', - 'EDU.NG', - 'GOV.NG', - 'I.NG', - 'MIL.NG', - 'MOBI.NG', - 'NAME.NG', - 'NET.NG', - 'ORG.NG', - 'SCH.NG', + 'exceptions' => [], + 'rules' => [ + 'BIZ.NG', + 'CO.BIZ.NG', + 'COL.NG', + 'COM.NG', + 'DL.BIZ.NG', + 'EDU.NG', + 'FIRM.NG', + 'GEN.NG', + 'GO.BIZ.NG', + 'GOV.NG', + 'I.NG', + 'LG.BIZ.NG', + 'LTD.NG', + 'MIL.NG', + 'MOBI.NG', + 'NAME.NG', + 'NET.NG', + 'NGO.NG', + 'ON.BIZ.NG', + 'ORG.NG', + 'PLC.NG', + 'SCH.NG', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/NI.php b/data/domain/public-suffix/NI.php index 46a3f118..8abfd8b9 100644 --- a/data/domain/public-suffix/NI.php +++ b/data/domain/public-suffix/NI.php @@ -2,18 +2,22 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.NI', - 'BIZ.NI', - 'CO.NI', - 'COM.NI', - 'EDU.NI', - 'GOB.NI', - 'IN.NI', - 'INFO.NI', - 'INT.NI', - 'MIL.NI', - 'NET.NI', - 'NOM.NI', - 'ORG.NI', - 'WEB.NI', + 'exceptions' => [], + 'rules' => [ + 'AC.NI', + 'BIZ.NI', + 'CO.NI', + 'COM.NI', + 'EDU.NI', + 'GOB.NI', + 'IN.NI', + 'INFO.NI', + 'INT.NI', + 'MIL.NI', + 'NET.NI', + 'NOM.NI', + 'ORG.NI', + 'WEB.NI', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/NL.php b/data/domain/public-suffix/NL.php new file mode 100644 index 00000000..d5905704 --- /dev/null +++ b/data/domain/public-suffix/NL.php @@ -0,0 +1,19 @@ + [], + 'rules' => [ + '123WEBSITE.NL', + 'CISTRON.NL', + 'CO.NL', + 'DEMON.NL', + 'GOV.NL', + 'HOSTING-CLUSTER.NL', + 'KHPLAY.NL', + 'MYSPREADSHOP.NL', + ], + 'wildcards' => [ + 'TRANSURL.NL', + ], +]; diff --git a/data/domain/public-suffix/NO.php b/data/domain/public-suffix/NO.php index 931e9839..0102fb9a 100644 --- a/data/domain/public-suffix/NO.php +++ b/data/domain/public-suffix/NO.php @@ -2,754 +2,761 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'FHS.NO', - 'FOLKEBIBL.NO', - 'FYLKESBIBL.NO', - 'IDRETT.NO', - 'MUSEUM.NO', - 'PRIV.NO', - 'VGS.NO', - 'DEP.NO', - 'HERAD.NO', - 'KOMMUNE.NO', - 'MIL.NO', - 'STAT.NO', - 'AA.NO', - 'AH.NO', - 'BU.NO', - 'FM.NO', - 'HL.NO', - 'HM.NO', - 'JAN-MAYEN.NO', - 'MR.NO', - 'NL.NO', - 'NT.NO', - 'OF.NO', - 'OL.NO', - 'OSLO.NO', - 'RL.NO', - 'SF.NO', - 'ST.NO', - 'SVALBARD.NO', - 'TM.NO', - 'TR.NO', - 'VA.NO', - 'VF.NO', - 'GS.AA.NO', - 'GS.AH.NO', - 'GS.BU.NO', - 'GS.FM.NO', - 'GS.HL.NO', - 'GS.HM.NO', - 'GS.JAN-MAYEN.NO', - 'GS.MR.NO', - 'GS.NL.NO', - 'GS.NT.NO', - 'GS.OF.NO', - 'GS.OL.NO', - 'GS.OSLO.NO', - 'GS.RL.NO', - 'GS.SF.NO', - 'GS.ST.NO', - 'GS.SVALBARD.NO', - 'GS.TM.NO', - 'GS.TR.NO', - 'GS.VA.NO', - 'GS.VF.NO', - 'AKREHAMN.NO', - 'ÅKREHAMN.NO', - 'ALGARD.NO', - 'ÅLGÅRD.NO', - 'ARNA.NO', - 'BRONNOYSUND.NO', - 'BRØNNØYSUND.NO', - 'BRUMUNDDAL.NO', - 'BRYNE.NO', - 'DROBAK.NO', - 'DRØBAK.NO', - 'EGERSUND.NO', - 'FETSUND.NO', - 'FLORO.NO', - 'FLORØ.NO', - 'FREDRIKSTAD.NO', - 'HOKKSUND.NO', - 'HONEFOSS.NO', - 'HØNEFOSS.NO', - 'JESSHEIM.NO', - 'JORPELAND.NO', - 'JØRPELAND.NO', - 'KIRKENES.NO', - 'KOPERVIK.NO', - 'KROKSTADELVA.NO', - 'LANGEVAG.NO', - 'LANGEVÅG.NO', - 'LEIRVIK.NO', - 'MJONDALEN.NO', - 'MJØNDALEN.NO', - 'MO-I-RANA.NO', - 'MOSJOEN.NO', - 'MOSJØEN.NO', - 'NESODDTANGEN.NO', - 'ORKANGER.NO', - 'OSOYRO.NO', - 'OSØYRO.NO', - 'RAHOLT.NO', - 'RÅHOLT.NO', - 'SANDNESSJOEN.NO', - 'SANDNESSJØEN.NO', - 'SKEDSMOKORSET.NO', - 'SLATTUM.NO', - 'SPJELKAVIK.NO', - 'STATHELLE.NO', - 'STAVERN.NO', - 'STJORDALSHALSEN.NO', - 'STJØRDALSHALSEN.NO', - 'TANANGER.NO', - 'TRANBY.NO', - 'VOSSEVANGEN.NO', - 'AARBORTE.NO', - 'AEJRIE.NO', - 'AFJORD.NO', - 'ÅFJORD.NO', - 'AGDENES.NO', - 'NES.AKERSHUS.NO', - 'AKNOLUOKTA.NO', - 'ÁKŊOLUOKTA.NO', - 'AL.NO', - 'ÅL.NO', - 'ALAHEADJU.NO', - 'ÁLAHEADJU.NO', - 'ALESUND.NO', - 'ÅLESUND.NO', - 'ALSTAHAUG.NO', - 'ALTA.NO', - 'ÁLTÁ.NO', - 'ALVDAL.NO', - 'AMLI.NO', - 'ÅMLI.NO', - 'AMOT.NO', - 'ÅMOT.NO', - 'ANDASUOLO.NO', - 'ANDEBU.NO', - 'ANDOY.NO', - 'ANDØY.NO', - 'ARDAL.NO', - 'ÅRDAL.NO', - 'AREMARK.NO', - 'ARENDAL.NO', - 'ÅS.NO', - 'ASERAL.NO', - 'ÅSERAL.NO', - 'ASKER.NO', - 'ASKIM.NO', - 'ASKOY.NO', - 'ASKØY.NO', - 'ASKVOLL.NO', - 'ASNES.NO', - 'ÅSNES.NO', - 'AUDNEDALN.NO', - 'AUKRA.NO', - 'AURE.NO', - 'AURLAND.NO', - 'AURSKOG-HOLAND.NO', - 'AURSKOG-HØLAND.NO', - 'AUSTEVOLL.NO', - 'AUSTRHEIM.NO', - 'AVEROY.NO', - 'AVERØY.NO', - 'BADADDJA.NO', - 'BÅDÅDDJÅ.NO', - 'BÆRUM.NO', - 'BAHCAVUOTNA.NO', - 'BÁHCAVUOTNA.NO', - 'BAHCCAVUOTNA.NO', - 'BÁHCCAVUOTNA.NO', - 'BAIDAR.NO', - 'BÁIDÁR.NO', - 'BAJDDAR.NO', - 'BÁJDDAR.NO', - 'BALAT.NO', - 'BÁLÁT.NO', - 'BALESTRAND.NO', - 'BALLANGEN.NO', - 'BALSFJORD.NO', - 'BAMBLE.NO', - 'BARDU.NO', - 'BARUM.NO', - 'BATSFJORD.NO', - 'BÅTSFJORD.NO', - 'BEARALVAHKI.NO', - 'BEARALVÁHKI.NO', - 'BEARDU.NO', - 'BEIARN.NO', - 'BERG.NO', - 'BERGEN.NO', - 'BERLEVAG.NO', - 'BERLEVÅG.NO', - 'BIEVAT.NO', - 'BIEVÁT.NO', - 'BINDAL.NO', - 'BIRKENES.NO', - 'BJERKREIM.NO', - 'BJUGN.NO', - 'BODO.NO', - 'BODØ.NO', - 'BOKN.NO', - 'BOMLO.NO', - 'BØMLO.NO', - 'BREMANGER.NO', - 'BRONNOY.NO', - 'BRØNNØY.NO', - 'BUDEJJU.NO', - 'NES.BUSKERUD.NO', - 'BYGLAND.NO', - 'BYKLE.NO', - 'CAHCESUOLO.NO', - 'ČÁHCESUOLO.NO', - 'DAVVENJARGA.NO', - 'DAVVENJÁRGA.NO', - 'DAVVESIIDA.NO', - 'DEATNU.NO', - 'DIELDDANUORRI.NO', - 'DIVTASVUODNA.NO', - 'DIVTTASVUOTNA.NO', - 'DONNA.NO', - 'DØNNA.NO', - 'DOVRE.NO', - 'DRAMMEN.NO', - 'DRANGEDAL.NO', - 'DYROY.NO', - 'DYRØY.NO', - 'EID.NO', - 'EIDFJORD.NO', - 'EIDSBERG.NO', - 'EIDSKOG.NO', - 'EIDSVOLL.NO', - 'EIGERSUND.NO', - 'ELVERUM.NO', - 'ENEBAKK.NO', - 'ENGERDAL.NO', - 'ETNE.NO', - 'ETNEDAL.NO', - 'EVENASSI.NO', - 'EVENÁŠŠI.NO', - 'EVENES.NO', - 'EVJE-OG-HORNNES.NO', - 'FARSUND.NO', - 'FAUSKE.NO', - 'FEDJE.NO', - 'FET.NO', - 'FINNOY.NO', - 'FINNØY.NO', - 'FITJAR.NO', - 'FJALER.NO', - 'FJELL.NO', - 'FLA.NO', - 'FLÅ.NO', - 'FLAKSTAD.NO', - 'FLATANGER.NO', - 'FLEKKEFJORD.NO', - 'FLESBERG.NO', - 'FLORA.NO', - 'FOLLDAL.NO', - 'FORDE.NO', - 'FØRDE.NO', - 'FORSAND.NO', - 'FOSNES.NO', - 'FRÆNA.NO', - 'FRANA.NO', - 'FREI.NO', - 'FROGN.NO', - 'FROLAND.NO', - 'FROSTA.NO', - 'FROYA.NO', - 'FRØYA.NO', - 'FUOISKU.NO', - 'FUOSSKO.NO', - 'FUSA.NO', - 'FYRESDAL.NO', - 'GAIVUOTNA.NO', - 'GÁIVUOTNA.NO', - 'GALSA.NO', - 'GÁLSÁ.NO', - 'GAMVIK.NO', - 'GANGAVIIKA.NO', - 'GÁŊGAVIIKA.NO', - 'GAULAR.NO', - 'GAUSDAL.NO', - 'GIEHTAVUOATNA.NO', - 'GILDESKAL.NO', - 'GILDESKÅL.NO', - 'GISKE.NO', - 'GJEMNES.NO', - 'GJERDRUM.NO', - 'GJERSTAD.NO', - 'GJESDAL.NO', - 'GJOVIK.NO', - 'GJØVIK.NO', - 'GLOPPEN.NO', - 'GOL.NO', - 'GRAN.NO', - 'GRANE.NO', - 'GRANVIN.NO', - 'GRATANGEN.NO', - 'GRIMSTAD.NO', - 'GRONG.NO', - 'GRUE.NO', - 'GULEN.NO', - 'GUOVDAGEAIDNU.NO', - 'HA.NO', - 'HÅ.NO', - 'HABMER.NO', - 'HÁBMER.NO', - 'HADSEL.NO', - 'HÆGEBOSTAD.NO', - 'HAGEBOSTAD.NO', - 'HALDEN.NO', - 'HALSA.NO', - 'HAMAR.NO', - 'HAMAROY.NO', - 'HAMMARFEASTA.NO', - 'HÁMMÁRFEASTA.NO', - 'HAMMERFEST.NO', - 'HAPMIR.NO', - 'HÁPMIR.NO', - 'HARAM.NO', - 'HAREID.NO', - 'HARSTAD.NO', - 'HASVIK.NO', - 'HATTFJELLDAL.NO', - 'HAUGESUND.NO', - 'OS.HEDMARK.NO', - 'VALER.HEDMARK.NO', - 'VÅLER.HEDMARK.NO', - 'HEMNE.NO', - 'HEMNES.NO', - 'HEMSEDAL.NO', - 'HITRA.NO', - 'HJARTDAL.NO', - 'HJELMELAND.NO', - 'HOBOL.NO', - 'HOBØL.NO', - 'HOF.NO', - 'HOL.NO', - 'HOLE.NO', - 'HOLMESTRAND.NO', - 'HOLTALEN.NO', - 'HOLTÅLEN.NO', - 'OS.HORDALAND.NO', - 'HORNINDAL.NO', - 'HORTEN.NO', - 'HOYANGER.NO', - 'HØYANGER.NO', - 'HOYLANDET.NO', - 'HØYLANDET.NO', - 'HURDAL.NO', - 'HURUM.NO', - 'HVALER.NO', - 'HYLLESTAD.NO', - 'IBESTAD.NO', - 'INDEROY.NO', - 'INDERØY.NO', - 'IVELAND.NO', - 'IVGU.NO', - 'JEVNAKER.NO', - 'JOLSTER.NO', - 'JØLSTER.NO', - 'JONDAL.NO', - 'KAFJORD.NO', - 'KÅFJORD.NO', - 'KARASJOHKA.NO', - 'KÁRÁŠJOHKA.NO', - 'KARASJOK.NO', - 'KARLSOY.NO', - 'KARMOY.NO', - 'KARMØY.NO', - 'KAUTOKEINO.NO', - 'KLABU.NO', - 'KLÆBU.NO', - 'KLEPP.NO', - 'KONGSBERG.NO', - 'KONGSVINGER.NO', - 'KRAANGHKE.NO', - 'KRÅANGHKE.NO', - 'KRAGERO.NO', - 'KRAGERØ.NO', - 'KRISTIANSAND.NO', - 'KRISTIANSUND.NO', - 'KRODSHERAD.NO', - 'KRØDSHERAD.NO', - 'KVÆFJORD.NO', - 'KVÆNANGEN.NO', - 'KVAFJORD.NO', - 'KVALSUND.NO', - 'KVAM.NO', - 'KVANANGEN.NO', - 'KVINESDAL.NO', - 'KVINNHERAD.NO', - 'KVITESEID.NO', - 'KVITSOY.NO', - 'KVITSØY.NO', - 'LAAKESVUEMIE.NO', - 'LÆRDAL.NO', - 'LAHPPI.NO', - 'LÁHPPI.NO', - 'LARDAL.NO', - 'LARVIK.NO', - 'LAVAGIS.NO', - 'LAVANGEN.NO', - 'LEANGAVIIKA.NO', - 'LEAŊGAVIIKA.NO', - 'LEBESBY.NO', - 'LEIKANGER.NO', - 'LEIRFJORD.NO', - 'LEKA.NO', - 'LEKSVIK.NO', - 'LENVIK.NO', - 'LERDAL.NO', - 'LESJA.NO', - 'LEVANGER.NO', - 'LIER.NO', - 'LIERNE.NO', - 'LILLEHAMMER.NO', - 'LILLESAND.NO', - 'LINDAS.NO', - 'LINDÅS.NO', - 'LINDESNES.NO', - 'LOABAT.NO', - 'LOABÁT.NO', - 'LODINGEN.NO', - 'LØDINGEN.NO', - 'LOM.NO', - 'LOPPA.NO', - 'LORENSKOG.NO', - 'LØRENSKOG.NO', - 'LOTEN.NO', - 'LØTEN.NO', - 'LUND.NO', - 'LUNNER.NO', - 'LUROY.NO', - 'LURØY.NO', - 'LUSTER.NO', - 'LYNGDAL.NO', - 'LYNGEN.NO', - 'MALATVUOPMI.NO', - 'MÁLATVUOPMI.NO', - 'MALSELV.NO', - 'MÅLSELV.NO', - 'MALVIK.NO', - 'MANDAL.NO', - 'MARKER.NO', - 'MARNARDAL.NO', - 'MASFJORDEN.NO', - 'MASOY.NO', - 'MÅSØY.NO', - 'MATTA-VARJJAT.NO', - 'MÁTTA-VÁRJJAT.NO', - 'MELAND.NO', - 'MELDAL.NO', - 'MELHUS.NO', - 'MELOY.NO', - 'MELØY.NO', - 'MERAKER.NO', - 'MERÅKER.NO', - 'MIDSUND.NO', - 'MIDTRE-GAULDAL.NO', - 'MOAREKE.NO', - 'MOÅREKE.NO', - 'MODALEN.NO', - 'MODUM.NO', - 'MOLDE.NO', - 'HEROY.MORE-OG-ROMSDAL.NO', - 'SANDE.MORE-OG-ROMSDAL.NO', - 'HERØY.MØRE-OG-ROMSDAL.NO', - 'SANDE.MØRE-OG-ROMSDAL.NO', - 'MOSKENES.NO', - 'MOSS.NO', - 'MUOSAT.NO', - 'MUOSÁT.NO', - 'NAAMESJEVUEMIE.NO', - 'NÅÅMESJEVUEMIE.NO', - 'NÆRØY.NO', - 'NAMDALSEID.NO', - 'NAMSOS.NO', - 'NAMSSKOGAN.NO', - 'NANNESTAD.NO', - 'NAROY.NO', - 'NARVIIKA.NO', - 'NARVIK.NO', - 'NAUSTDAL.NO', - 'NAVUOTNA.NO', - 'NÁVUOTNA.NO', - 'NEDRE-EIKER.NO', - 'NESNA.NO', - 'NESODDEN.NO', - 'NESSEBY.NO', - 'NESSET.NO', - 'NISSEDAL.NO', - 'NITTEDAL.NO', - 'NORD-AURDAL.NO', - 'NORD-FRON.NO', - 'NORD-ODAL.NO', - 'NORDDAL.NO', - 'NORDKAPP.NO', - 'BO.NORDLAND.NO', - 'BØ.NORDLAND.NO', - 'HEROY.NORDLAND.NO', - 'HERØY.NORDLAND.NO', - 'NORDRE-LAND.NO', - 'NORDREISA.NO', - 'NORE-OG-UVDAL.NO', - 'NOTODDEN.NO', - 'NOTTEROY.NO', - 'NØTTERØY.NO', - 'ODDA.NO', - 'OKSNES.NO', - 'ØKSNES.NO', - 'OMASVUOTNA.NO', - 'OPPDAL.NO', - 'OPPEGARD.NO', - 'OPPEGÅRD.NO', - 'ORKDAL.NO', - 'ORLAND.NO', - 'ØRLAND.NO', - 'ORSKOG.NO', - 'ØRSKOG.NO', - 'ORSTA.NO', - 'ØRSTA.NO', - 'OSEN.NO', - 'OSTEROY.NO', - 'OSTERØY.NO', - 'VALER.OSTFOLD.NO', - 'VÅLER.ØSTFOLD.NO', - 'OSTRE-TOTEN.NO', - 'ØSTRE-TOTEN.NO', - 'OVERHALLA.NO', - 'OVRE-EIKER.NO', - 'ØVRE-EIKER.NO', - 'OYER.NO', - 'ØYER.NO', - 'OYGARDEN.NO', - 'ØYGARDEN.NO', - 'OYSTRE-SLIDRE.NO', - 'ØYSTRE-SLIDRE.NO', - 'PORSANGER.NO', - 'PORSANGU.NO', - 'PORSÁŊGU.NO', - 'PORSGRUNN.NO', - 'RADE.NO', - 'RÅDE.NO', - 'RADOY.NO', - 'RADØY.NO', - 'RÆLINGEN.NO', - 'RAHKKERAVJU.NO', - 'RÁHKKERÁVJU.NO', - 'RAISA.NO', - 'RÁISA.NO', - 'RAKKESTAD.NO', - 'RALINGEN.NO', - 'RANA.NO', - 'RANDABERG.NO', - 'RAUMA.NO', - 'RENDALEN.NO', - 'RENNEBU.NO', - 'RENNESOY.NO', - 'RENNESØY.NO', - 'RINDAL.NO', - 'RINGEBU.NO', - 'RINGERIKE.NO', - 'RINGSAKER.NO', - 'RISOR.NO', - 'RISØR.NO', - 'RISSA.NO', - 'ROAN.NO', - 'RODOY.NO', - 'RØDØY.NO', - 'ROLLAG.NO', - 'ROMSA.NO', - 'ROMSKOG.NO', - 'RØMSKOG.NO', - 'ROROS.NO', - 'RØROS.NO', - 'ROST.NO', - 'RØST.NO', - 'ROYKEN.NO', - 'RØYKEN.NO', - 'ROYRVIK.NO', - 'RØYRVIK.NO', - 'RUOVAT.NO', - 'RYGGE.NO', - 'SALANGEN.NO', - 'SALAT.NO', - 'SÁLAT.NO', - 'SÁLÁT.NO', - 'SALTDAL.NO', - 'SAMNANGER.NO', - 'SANDEFJORD.NO', - 'SANDNES.NO', - 'SANDOY.NO', - 'SANDØY.NO', - 'SARPSBORG.NO', - 'SAUDA.NO', - 'SAUHERAD.NO', - 'SEL.NO', - 'SELBU.NO', - 'SELJE.NO', - 'SELJORD.NO', - 'SIELLAK.NO', - 'SIGDAL.NO', - 'SILJAN.NO', - 'SIRDAL.NO', - 'SKANIT.NO', - 'SKÁNIT.NO', - 'SKANLAND.NO', - 'SKÅNLAND.NO', - 'SKAUN.NO', - 'SKEDSMO.NO', - 'SKI.NO', - 'SKIEN.NO', - 'SKIERVA.NO', - 'SKIERVÁ.NO', - 'SKIPTVET.NO', - 'SKJAK.NO', - 'SKJÅK.NO', - 'SKJERVOY.NO', - 'SKJERVØY.NO', - 'SKODJE.NO', - 'SMOLA.NO', - 'SMØLA.NO', - 'SNAASE.NO', - 'SNÅASE.NO', - 'SNASA.NO', - 'SNÅSA.NO', - 'SNILLFJORD.NO', - 'SNOASA.NO', - 'SOGNDAL.NO', - 'SOGNE.NO', - 'SØGNE.NO', - 'SOKNDAL.NO', - 'SOLA.NO', - 'SOLUND.NO', - 'SOMNA.NO', - 'SØMNA.NO', - 'SONDRE-LAND.NO', - 'SØNDRE-LAND.NO', - 'SONGDALEN.NO', - 'SOR-AURDAL.NO', - 'SØR-AURDAL.NO', - 'SOR-FRON.NO', - 'SØR-FRON.NO', - 'SOR-ODAL.NO', - 'SØR-ODAL.NO', - 'SOR-VARANGER.NO', - 'SØR-VARANGER.NO', - 'SORFOLD.NO', - 'SØRFOLD.NO', - 'SORREISA.NO', - 'SØRREISA.NO', - 'SORTLAND.NO', - 'SORUM.NO', - 'SØRUM.NO', - 'SPYDEBERG.NO', - 'STANGE.NO', - 'STAVANGER.NO', - 'STEIGEN.NO', - 'STEINKJER.NO', - 'STJORDAL.NO', - 'STJØRDAL.NO', - 'STOKKE.NO', - 'STOR-ELVDAL.NO', - 'STORD.NO', - 'STORDAL.NO', - 'STORFJORD.NO', - 'STRAND.NO', - 'STRANDA.NO', - 'STRYN.NO', - 'SULA.NO', - 'SULDAL.NO', - 'SUND.NO', - 'SUNNDAL.NO', - 'SURNADAL.NO', - 'SVEIO.NO', - 'SVELVIK.NO', - 'SYKKYLVEN.NO', - 'TANA.NO', - 'BO.TELEMARK.NO', - 'BØ.TELEMARK.NO', - 'TIME.NO', - 'TINGVOLL.NO', - 'TINN.NO', - 'TJELDSUND.NO', - 'TJOME.NO', - 'TJØME.NO', - 'TOKKE.NO', - 'TOLGA.NO', - 'TONSBERG.NO', - 'TØNSBERG.NO', - 'TORSKEN.NO', - 'TRÆNA.NO', - 'TRANA.NO', - 'TRANOY.NO', - 'TRANØY.NO', - 'TROANDIN.NO', - 'TROGSTAD.NO', - 'TRØGSTAD.NO', - 'TROMSA.NO', - 'TROMSO.NO', - 'TROMSØ.NO', - 'TRONDHEIM.NO', - 'TRYSIL.NO', - 'TVEDESTRAND.NO', - 'TYDAL.NO', - 'TYNSET.NO', - 'TYSFJORD.NO', - 'TYSNES.NO', - 'TYSVÆR.NO', - 'TYSVAR.NO', - 'ULLENSAKER.NO', - 'ULLENSVANG.NO', - 'ULVIK.NO', - 'UNJARGA.NO', - 'UNJÁRGA.NO', - 'UTSIRA.NO', - 'VAAPSTE.NO', - 'VADSO.NO', - 'VADSØ.NO', - 'VÆRØY.NO', - 'VAGA.NO', - 'VÅGÅ.NO', - 'VAGAN.NO', - 'VÅGAN.NO', - 'VAGSOY.NO', - 'VÅGSØY.NO', - 'VAKSDAL.NO', - 'VALLE.NO', - 'VANG.NO', - 'VANYLVEN.NO', - 'VARDO.NO', - 'VARDØ.NO', - 'VARGGAT.NO', - 'VÁRGGÁT.NO', - 'VAROY.NO', - 'VEFSN.NO', - 'VEGA.NO', - 'VEGARSHEI.NO', - 'VEGÅRSHEI.NO', - 'VENNESLA.NO', - 'VERDAL.NO', - 'VERRAN.NO', - 'VESTBY.NO', - 'SANDE.VESTFOLD.NO', - 'VESTNES.NO', - 'VESTRE-SLIDRE.NO', - 'VESTRE-TOTEN.NO', - 'VESTVAGOY.NO', - 'VESTVÅGØY.NO', - 'VEVELSTAD.NO', - 'VIK.NO', - 'VIKNA.NO', - 'VINDAFJORD.NO', - 'VOAGAT.NO', - 'VOLDA.NO', - 'VOSS.NO', + 'exceptions' => [], + 'rules' => [ + '123HJEMMESIDE.NO', + 'AA.NO', + 'AARBORTE.NO', + 'AEJRIE.NO', + 'AFJORD.NO', + 'AGDENES.NO', + 'AH.NO', + 'AKNOLUOKTA.NO', + 'AKREHAMN.NO', + 'AL.NO', + 'ALAHEADJU.NO', + 'ALESUND.NO', + 'ALGARD.NO', + 'ALSTAHAUG.NO', + 'ALTA.NO', + 'ALVDAL.NO', + 'AMLI.NO', + 'AMOT.NO', + 'ANDASUOLO.NO', + 'ANDEBU.NO', + 'ANDOY.NO', + 'ARDAL.NO', + 'AREMARK.NO', + 'ARENDAL.NO', + 'ARNA.NO', + 'ASERAL.NO', + 'ASKER.NO', + 'ASKIM.NO', + 'ASKOY.NO', + 'ASKVOLL.NO', + 'ASNES.NO', + 'AUDNEDALN.NO', + 'AUKRA.NO', + 'AURE.NO', + 'AURLAND.NO', + 'AURSKOG-HOLAND.NO', + 'AUSTEVOLL.NO', + 'AUSTRHEIM.NO', + 'AVEROY.NO', + 'BADADDJA.NO', + 'BAHCAVUOTNA.NO', + 'BAHCCAVUOTNA.NO', + 'BAIDAR.NO', + 'BAJDDAR.NO', + 'BALAT.NO', + 'BALESTRAND.NO', + 'BALLANGEN.NO', + 'BALSFJORD.NO', + 'BAMBLE.NO', + 'BARDU.NO', + 'BARUM.NO', + 'BATSFJORD.NO', + 'BEARALVAHKI.NO', + 'BEARDU.NO', + 'BEIARN.NO', + 'BERG.NO', + 'BERGEN.NO', + 'BERLEVAG.NO', + 'BIEVAT.NO', + 'BINDAL.NO', + 'BIRKENES.NO', + 'BJERKREIM.NO', + 'BJUGN.NO', + 'BO.NORDLAND.NO', + 'BO.TELEMARK.NO', + 'BODO.NO', + 'BOKN.NO', + 'BOMLO.NO', + 'BREMANGER.NO', + 'BRONNOY.NO', + 'BRONNOYSUND.NO', + 'BRUMUNDDAL.NO', + 'BRYNE.NO', + 'BU.NO', + 'BUDEJJU.NO', + 'BYGLAND.NO', + 'BYKLE.NO', + 'CAHCESUOLO.NO', + 'CO.NO', + 'DAVVENJARGA.NO', + 'DAVVESIIDA.NO', + 'DEATNU.NO', + 'DEP.NO', + 'DIELDDANUORRI.NO', + 'DIVTASVUODNA.NO', + 'DIVTTASVUOTNA.NO', + 'DONNA.NO', + 'DOVRE.NO', + 'DRAMMEN.NO', + 'DRANGEDAL.NO', + 'DROBAK.NO', + 'DYROY.NO', + 'EGERSUND.NO', + 'EID.NO', + 'EIDFJORD.NO', + 'EIDSBERG.NO', + 'EIDSKOG.NO', + 'EIDSVOLL.NO', + 'EIGERSUND.NO', + 'ELVERUM.NO', + 'ENEBAKK.NO', + 'ENGERDAL.NO', + 'ETNE.NO', + 'ETNEDAL.NO', + 'EVENASSI.NO', + 'EVENES.NO', + 'EVJE-OG-HORNNES.NO', + 'FARSUND.NO', + 'FAUSKE.NO', + 'FEDJE.NO', + 'FET.NO', + 'FETSUND.NO', + 'FHS.NO', + 'FINNOY.NO', + 'FITJAR.NO', + 'FJALER.NO', + 'FJELL.NO', + 'FLA.NO', + 'FLAKSTAD.NO', + 'FLATANGER.NO', + 'FLEKKEFJORD.NO', + 'FLESBERG.NO', + 'FLORA.NO', + 'FLORO.NO', + 'FM.NO', + 'FOLKEBIBL.NO', + 'FOLLDAL.NO', + 'FORDE.NO', + 'FORSAND.NO', + 'FOSNES.NO', + 'FRANA.NO', + 'FREDRIKSTAD.NO', + 'FREI.NO', + 'FROGN.NO', + 'FROLAND.NO', + 'FROSTA.NO', + 'FROYA.NO', + 'FUOISKU.NO', + 'FUOSSKO.NO', + 'FUSA.NO', + 'FYLKESBIBL.NO', + 'FYRESDAL.NO', + 'GAIVUOTNA.NO', + 'GALSA.NO', + 'GAMVIK.NO', + 'GANGAVIIKA.NO', + 'GAULAR.NO', + 'GAUSDAL.NO', + 'GIEHTAVUOATNA.NO', + 'GILDESKAL.NO', + 'GISKE.NO', + 'GJEMNES.NO', + 'GJERDRUM.NO', + 'GJERSTAD.NO', + 'GJESDAL.NO', + 'GJOVIK.NO', + 'GLOPPEN.NO', + 'GOL.NO', + 'GRAN.NO', + 'GRANE.NO', + 'GRANVIN.NO', + 'GRATANGEN.NO', + 'GRIMSTAD.NO', + 'GRONG.NO', + 'GRUE.NO', + 'GS.AA.NO', + 'GS.AH.NO', + 'GS.BU.NO', + 'GS.FM.NO', + 'GS.HL.NO', + 'GS.HM.NO', + 'GS.JAN-MAYEN.NO', + 'GS.MR.NO', + 'GS.NL.NO', + 'GS.NT.NO', + 'GS.OF.NO', + 'GS.OL.NO', + 'GS.OSLO.NO', + 'GS.RL.NO', + 'GS.SF.NO', + 'GS.ST.NO', + 'GS.SVALBARD.NO', + 'GS.TM.NO', + 'GS.TR.NO', + 'GS.VA.NO', + 'GS.VF.NO', + 'GULEN.NO', + 'GUOVDAGEAIDNU.NO', + 'HA.NO', + 'HABMER.NO', + 'HADSEL.NO', + 'HAGEBOSTAD.NO', + 'HALDEN.NO', + 'HALSA.NO', + 'HAMAR.NO', + 'HAMAROY.NO', + 'HAMMARFEASTA.NO', + 'HAMMERFEST.NO', + 'HAPMIR.NO', + 'HARAM.NO', + 'HAREID.NO', + 'HARSTAD.NO', + 'HASVIK.NO', + 'HATTFJELLDAL.NO', + 'HAUGESUND.NO', + 'HEMNE.NO', + 'HEMNES.NO', + 'HEMSEDAL.NO', + 'HERAD.NO', + 'HEROY.MORE-OG-ROMSDAL.NO', + 'HEROY.NORDLAND.NO', + 'HITRA.NO', + 'HJARTDAL.NO', + 'HJELMELAND.NO', + 'HL.NO', + 'HM.NO', + 'HOBOL.NO', + 'HOF.NO', + 'HOKKSUND.NO', + 'HOL.NO', + 'HOLE.NO', + 'HOLMESTRAND.NO', + 'HOLTALEN.NO', + 'HONEFOSS.NO', + 'HORNINDAL.NO', + 'HORTEN.NO', + 'HOYANGER.NO', + 'HOYLANDET.NO', + 'HURDAL.NO', + 'HURUM.NO', + 'HVALER.NO', + 'HYLLESTAD.NO', + 'IBESTAD.NO', + 'IDRETT.NO', + 'INDEROY.NO', + 'IVELAND.NO', + 'IVGU.NO', + 'JAN-MAYEN.NO', + 'JESSHEIM.NO', + 'JEVNAKER.NO', + 'JOLSTER.NO', + 'JONDAL.NO', + 'JORPELAND.NO', + 'KAFJORD.NO', + 'KARASJOHKA.NO', + 'KARASJOK.NO', + 'KARLSOY.NO', + 'KARMOY.NO', + 'KAUTOKEINO.NO', + 'KIRKENES.NO', + 'KLABU.NO', + 'KLEPP.NO', + 'KOMMUNE.NO', + 'KONGSBERG.NO', + 'KONGSVINGER.NO', + 'KOPERVIK.NO', + 'KRAANGHKE.NO', + 'KRAGERO.NO', + 'KRISTIANSAND.NO', + 'KRISTIANSUND.NO', + 'KRODSHERAD.NO', + 'KROKSTADELVA.NO', + 'KVAFJORD.NO', + 'KVALSUND.NO', + 'KVAM.NO', + 'KVANANGEN.NO', + 'KVINESDAL.NO', + 'KVINNHERAD.NO', + 'KVITESEID.NO', + 'KVITSOY.NO', + 'LAAKESVUEMIE.NO', + 'LAHPPI.NO', + 'LANGEVAG.NO', + 'LARDAL.NO', + 'LARVIK.NO', + 'LAVAGIS.NO', + 'LAVANGEN.NO', + 'LEANGAVIIKA.NO', + 'LEBESBY.NO', + 'LEIKANGER.NO', + 'LEIRFJORD.NO', + 'LEIRVIK.NO', + 'LEKA.NO', + 'LEKSVIK.NO', + 'LENVIK.NO', + 'LERDAL.NO', + 'LESJA.NO', + 'LEVANGER.NO', + 'LIER.NO', + 'LIERNE.NO', + 'LILLEHAMMER.NO', + 'LILLESAND.NO', + 'LINDAS.NO', + 'LINDESNES.NO', + 'LOABAT.NO', + 'LODINGEN.NO', + 'LOM.NO', + 'LOPPA.NO', + 'LORENSKOG.NO', + 'LOTEN.NO', + 'LUND.NO', + 'LUNNER.NO', + 'LUROY.NO', + 'LUSTER.NO', + 'LYNGDAL.NO', + 'LYNGEN.NO', + 'MALATVUOPMI.NO', + 'MALSELV.NO', + 'MALVIK.NO', + 'MANDAL.NO', + 'MARKER.NO', + 'MARNARDAL.NO', + 'MASFJORDEN.NO', + 'MASOY.NO', + 'MATTA-VARJJAT.NO', + 'MELAND.NO', + 'MELDAL.NO', + 'MELHUS.NO', + 'MELOY.NO', + 'MERAKER.NO', + 'MIDSUND.NO', + 'MIDTRE-GAULDAL.NO', + 'MIL.NO', + 'MJONDALEN.NO', + 'MO-I-RANA.NO', + 'MOAREKE.NO', + 'MODALEN.NO', + 'MODUM.NO', + 'MOLDE.NO', + 'MOSJOEN.NO', + 'MOSKENES.NO', + 'MOSS.NO', + 'MR.NO', + 'MUOSAT.NO', + 'MUSEUM.NO', + 'MYSPREADSHOP.NO', + 'NAAMESJEVUEMIE.NO', + 'NAMDALSEID.NO', + 'NAMSOS.NO', + 'NAMSSKOGAN.NO', + 'NANNESTAD.NO', + 'NAROY.NO', + 'NARVIIKA.NO', + 'NARVIK.NO', + 'NAUSTDAL.NO', + 'NAVUOTNA.NO', + 'NEDRE-EIKER.NO', + 'NES.AKERSHUS.NO', + 'NES.BUSKERUD.NO', + 'NESNA.NO', + 'NESODDEN.NO', + 'NESODDTANGEN.NO', + 'NESSEBY.NO', + 'NESSET.NO', + 'NISSEDAL.NO', + 'NITTEDAL.NO', + 'NL.NO', + 'NORD-AURDAL.NO', + 'NORD-FRON.NO', + 'NORD-ODAL.NO', + 'NORDDAL.NO', + 'NORDKAPP.NO', + 'NORDRE-LAND.NO', + 'NORDREISA.NO', + 'NORE-OG-UVDAL.NO', + 'NOTODDEN.NO', + 'NOTTEROY.NO', + 'NT.NO', + 'ODDA.NO', + 'OF.NO', + 'OKSNES.NO', + 'OL.NO', + 'OMASVUOTNA.NO', + 'OPPDAL.NO', + 'OPPEGARD.NO', + 'ORKANGER.NO', + 'ORKDAL.NO', + 'ORLAND.NO', + 'ORSKOG.NO', + 'ORSTA.NO', + 'OS.HEDMARK.NO', + 'OS.HORDALAND.NO', + 'OSEN.NO', + 'OSLO.NO', + 'OSOYRO.NO', + 'OSTEROY.NO', + 'OSTRE-TOTEN.NO', + 'OVERHALLA.NO', + 'OVRE-EIKER.NO', + 'OYER.NO', + 'OYGARDEN.NO', + 'OYSTRE-SLIDRE.NO', + 'PORSANGER.NO', + 'PORSANGU.NO', + 'PORSGRUNN.NO', + 'PRIV.NO', + 'RADE.NO', + 'RADOY.NO', + 'RAHKKERAVJU.NO', + 'RAHOLT.NO', + 'RAISA.NO', + 'RAKKESTAD.NO', + 'RALINGEN.NO', + 'RANA.NO', + 'RANDABERG.NO', + 'RAUMA.NO', + 'RENDALEN.NO', + 'RENNEBU.NO', + 'RENNESOY.NO', + 'RINDAL.NO', + 'RINGEBU.NO', + 'RINGERIKE.NO', + 'RINGSAKER.NO', + 'RISOR.NO', + 'RISSA.NO', + 'RL.NO', + 'ROAN.NO', + 'RODOY.NO', + 'ROLLAG.NO', + 'ROMSA.NO', + 'ROMSKOG.NO', + 'ROROS.NO', + 'ROST.NO', + 'ROYKEN.NO', + 'ROYRVIK.NO', + 'RUOVAT.NO', + 'RYGGE.NO', + 'SALANGEN.NO', + 'SALAT.NO', + 'SALTDAL.NO', + 'SAMNANGER.NO', + 'SANDE.MORE-OG-ROMSDAL.NO', + 'SANDE.VESTFOLD.NO', + 'SANDE.XN--MRE-OG-ROMSDAL-QQB.NO', + 'SANDEFJORD.NO', + 'SANDNES.NO', + 'SANDNESSJOEN.NO', + 'SANDOY.NO', + 'SARPSBORG.NO', + 'SAUDA.NO', + 'SAUHERAD.NO', + 'SEL.NO', + 'SELBU.NO', + 'SELJE.NO', + 'SELJORD.NO', + 'SF.NO', + 'SIELLAK.NO', + 'SIGDAL.NO', + 'SILJAN.NO', + 'SIRDAL.NO', + 'SKANIT.NO', + 'SKANLAND.NO', + 'SKAUN.NO', + 'SKEDSMO.NO', + 'SKEDSMOKORSET.NO', + 'SKI.NO', + 'SKIEN.NO', + 'SKIERVA.NO', + 'SKIPTVET.NO', + 'SKJAK.NO', + 'SKJERVOY.NO', + 'SKODJE.NO', + 'SLATTUM.NO', + 'SMOLA.NO', + 'SNAASE.NO', + 'SNASA.NO', + 'SNILLFJORD.NO', + 'SNOASA.NO', + 'SOGNDAL.NO', + 'SOGNE.NO', + 'SOKNDAL.NO', + 'SOLA.NO', + 'SOLUND.NO', + 'SOMNA.NO', + 'SONDRE-LAND.NO', + 'SONGDALEN.NO', + 'SOR-AURDAL.NO', + 'SOR-FRON.NO', + 'SOR-ODAL.NO', + 'SOR-VARANGER.NO', + 'SORFOLD.NO', + 'SORREISA.NO', + 'SORTLAND.NO', + 'SORUM.NO', + 'SPJELKAVIK.NO', + 'SPYDEBERG.NO', + 'ST.NO', + 'STANGE.NO', + 'STAT.NO', + 'STATHELLE.NO', + 'STAVANGER.NO', + 'STAVERN.NO', + 'STEIGEN.NO', + 'STEINKJER.NO', + 'STJORDAL.NO', + 'STJORDALSHALSEN.NO', + 'STOKKE.NO', + 'STOR-ELVDAL.NO', + 'STORD.NO', + 'STORDAL.NO', + 'STORFJORD.NO', + 'STRAND.NO', + 'STRANDA.NO', + 'STRYN.NO', + 'SULA.NO', + 'SULDAL.NO', + 'SUND.NO', + 'SUNNDAL.NO', + 'SURNADAL.NO', + 'SVALBARD.NO', + 'SVEIO.NO', + 'SVELVIK.NO', + 'SYKKYLVEN.NO', + 'TANA.NO', + 'TANANGER.NO', + 'TIME.NO', + 'TINGVOLL.NO', + 'TINN.NO', + 'TJELDSUND.NO', + 'TJOME.NO', + 'TM.NO', + 'TOKKE.NO', + 'TOLGA.NO', + 'TONSBERG.NO', + 'TORSKEN.NO', + 'TR.NO', + 'TRANA.NO', + 'TRANBY.NO', + 'TRANOY.NO', + 'TROANDIN.NO', + 'TROGSTAD.NO', + 'TROMSA.NO', + 'TROMSO.NO', + 'TRONDHEIM.NO', + 'TRYSIL.NO', + 'TVEDESTRAND.NO', + 'TYDAL.NO', + 'TYNSET.NO', + 'TYSFJORD.NO', + 'TYSNES.NO', + 'TYSVAR.NO', + 'ULLENSAKER.NO', + 'ULLENSVANG.NO', + 'ULVIK.NO', + 'UNJARGA.NO', + 'UTSIRA.NO', + 'VA.NO', + 'VAAPSTE.NO', + 'VADSO.NO', + 'VAGA.NO', + 'VAGAN.NO', + 'VAGSOY.NO', + 'VAKSDAL.NO', + 'VALER.HEDMARK.NO', + 'VALER.OSTFOLD.NO', + 'VALLE.NO', + 'VANG.NO', + 'VANYLVEN.NO', + 'VARDO.NO', + 'VARGGAT.NO', + 'VAROY.NO', + 'VEFSN.NO', + 'VEGA.NO', + 'VEGARSHEI.NO', + 'VENNESLA.NO', + 'VERDAL.NO', + 'VERRAN.NO', + 'VESTBY.NO', + 'VESTNES.NO', + 'VESTRE-SLIDRE.NO', + 'VESTRE-TOTEN.NO', + 'VESTVAGOY.NO', + 'VEVELSTAD.NO', + 'VF.NO', + 'VGS.NO', + 'VIK.NO', + 'VIKNA.NO', + 'VINDAFJORD.NO', + 'VOAGAT.NO', + 'VOLDA.NO', + 'VOSS.NO', + 'VOSSEVANGEN.NO', + 'XN--ANDY-IRA.NO', + 'XN--ASKY-IRA.NO', + 'XN--AURSKOG-HLAND-JNB.NO', + 'XN--AVERY-YUA.NO', + 'XN--B-5GA.NORDLAND.NO', + 'XN--B-5GA.TELEMARK.NO', + 'XN--BDDDJ-MRABD.NO', + 'XN--BEARALVHKI-Y4A.NO', + 'XN--BERLEVG-JXA.NO', + 'XN--BHCAVUOTNA-S4A.NO', + 'XN--BHCCAVUOTNA-K7A.NO', + 'XN--BIDR-5NAC.NO', + 'XN--BIEVT-0QA.NO', + 'XN--BJDDAR-PTA.NO', + 'XN--BLT-ELAB.NO', + 'XN--BMLO-GRA.NO', + 'XN--BOD-2NA.NO', + 'XN--BRNNY-WUAC.NO', + 'XN--BRNNYSUND-M8AC.NO', + 'XN--BRUM-VOA.NO', + 'XN--BTSFJORD-9ZA.NO', + 'XN--DAVVENJRGA-Y4A.NO', + 'XN--DNNA-GRA.NO', + 'XN--DRBAK-WUA.NO', + 'XN--DYRY-IRA.NO', + 'XN--EVENI-0QA01GA.NO', + 'XN--FINNY-YUA.NO', + 'XN--FJORD-LRA.NO', + 'XN--FL-ZIA.NO', + 'XN--FLOR-JRA.NO', + 'XN--FRDE-GRA.NO', + 'XN--FRNA-WOA.NO', + 'XN--FRYA-HRA.NO', + 'XN--GGAVIIKA-8YA47H.NO', + 'XN--GILDESKL-G0A.NO', + 'XN--GIVUOTNA-8YA.NO', + 'XN--GJVIK-WUA.NO', + 'XN--GLS-ELAC.NO', + 'XN--H-2FA.NO', + 'XN--HBMER-XQA.NO', + 'XN--HCESUOLO-7YA35B.NO', + 'XN--HERY-IRA.NORDLAND.NO', + 'XN--HERY-IRA.XN--MRE-OG-ROMSDAL-QQB.NO', + 'XN--HGEBOSTAD-G3A.NO', + 'XN--HMMRFEASTA-S4AC.NO', + 'XN--HNEFOSS-Q1A.NO', + 'XN--HOBL-IRA.NO', + 'XN--HOLTLEN-HXA.NO', + 'XN--HPMIR-XQA.NO', + 'XN--HYANGER-Q1A.NO', + 'XN--HYLANDET-54A.NO', + 'XN--INDERY-FYA.NO', + 'XN--JLSTER-BYA.NO', + 'XN--JRPELAND-54A.NO', + 'XN--KARMY-YUA.NO', + 'XN--KFJORD-IUA.NO', + 'XN--KLBU-WOA.NO', + 'XN--KOLUOKTA-7YA57H.NO', + 'XN--KRAGER-GYA.NO', + 'XN--KRANGHKE-B0A.NO', + 'XN--KRDSHERAD-M8A.NO', + 'XN--KREHAMN-DXA.NO', + 'XN--KRJOHKA-HWAB49J.NO', + 'XN--KSNES-UUA.NO', + 'XN--KVFJORD-NXA.NO', + 'XN--KVITSY-FYA.NO', + 'XN--KVNANGEN-K0A.NO', + 'XN--L-1FA.NO', + 'XN--LAHEADJU-7YA.NO', + 'XN--LANGEVG-JXA.NO', + 'XN--LDINGEN-Q1A.NO', + 'XN--LEAGAVIIKA-52B.NO', + 'XN--LESUND-HUA.NO', + 'XN--LGRD-POAC.NO', + 'XN--LHPPI-XQA.NO', + 'XN--LINDS-PRA.NO', + 'XN--LOABT-0QA.NO', + 'XN--LRDAL-SRA.NO', + 'XN--LRENSKOG-54A.NO', + 'XN--LT-LIAC.NO', + 'XN--LTEN-GRA.NO', + 'XN--LURY-IRA.NO', + 'XN--MELY-IRA.NO', + 'XN--MERKER-KUA.NO', + 'XN--MJNDALEN-64A.NO', + 'XN--MLATVUOPMI-S4A.NO', + 'XN--MLI-TLA.NO', + 'XN--MLSELV-IUA.NO', + 'XN--MOREKE-JUA.NO', + 'XN--MOSJEN-EYA.NO', + 'XN--MOT-TLA.NO', + 'XN--MSY-ULA0H.NO', + 'XN--MTTA-VRJJAT-K7AF.NO', + 'XN--MUOST-0QA.NO', + 'XN--NMESJEVUEMIE-TCBA.NO', + 'XN--NRY-YLA5G.NO', + 'XN--NTTERY-BYAE.NO', + 'XN--NVUOTNA-HWA.NO', + 'XN--OPPEGRD-IXA.NO', + 'XN--OSTERY-FYA.NO', + 'XN--OSYRO-WUA.NO', + 'XN--PORSGU-STA26F.NO', + 'XN--RADY-IRA.NO', + 'XN--RDAL-POA.NO', + 'XN--RDE-ULA.NO', + 'XN--RDY-0NAB.NO', + 'XN--RENNESY-V1A.NO', + 'XN--RHKKERVJU-01AF.NO', + 'XN--RHOLT-MRA.NO', + 'XN--RISA-5NA.NO', + 'XN--RISR-IRA.NO', + 'XN--RLAND-UUA.NO', + 'XN--RLINGEN-MXA.NO', + 'XN--RMSKOG-BYA.NO', + 'XN--RROS-GRA.NO', + 'XN--RSKOG-UUA.NO', + 'XN--RST-0NA.NO', + 'XN--RSTA-FRA.NO', + 'XN--RYKEN-VUA.NO', + 'XN--RYRVIK-BYA.NO', + 'XN--S-1FA.NO', + 'XN--SANDNESSJEN-OGB.NO', + 'XN--SANDY-YUA.NO', + 'XN--SERAL-LRA.NO', + 'XN--SGNE-GRA.NO', + 'XN--SKIERV-UTA.NO', + 'XN--SKJERVY-V1A.NO', + 'XN--SKJK-SOA.NO', + 'XN--SKNIT-YQA.NO', + 'XN--SKNLAND-FXA.NO', + 'XN--SLAT-5NA.NO', + 'XN--SLT-ELAB.NO', + 'XN--SMLA-HRA.NO', + 'XN--SMNA-GRA.NO', + 'XN--SNASE-NRA.NO', + 'XN--SNDRE-LAND-0CB.NO', + 'XN--SNES-POA.NO', + 'XN--SNSA-ROA.NO', + 'XN--SR-AURDAL-L8A.NO', + 'XN--SR-FRON-Q1A.NO', + 'XN--SR-ODAL-Q1A.NO', + 'XN--SR-VARANGER-GGB.NO', + 'XN--SRFOLD-BYA.NO', + 'XN--SRREISA-Q1A.NO', + 'XN--SRUM-GRA.NO', + 'XN--STJRDAL-S1A.NO', + 'XN--STJRDALSHALSEN-SQB.NO', + 'XN--STRE-TOTEN-ZCB.NO', + 'XN--TJME-HRA.NO', + 'XN--TNSBERG-Q1A.NO', + 'XN--TRANY-YUA.NO', + 'XN--TRGSTAD-R1A.NO', + 'XN--TRNA-WOA.NO', + 'XN--TROMS-ZUA.NO', + 'XN--TYSVR-VRA.NO', + 'XN--UNJRGA-RTA.NO', + 'XN--VADS-JRA.NO', + 'XN--VARD-JRA.NO', + 'XN--VEGRSHEI-C0A.NO', + 'XN--VESTVGY-IXA6O.NO', + 'XN--VG-YIAB.NO', + 'XN--VGAN-QOA.NO', + 'XN--VGSY-QOA0J.NO', + 'XN--VLER-QOA.HEDMARK.NO', + 'XN--VLER-QOA.XN--STFOLD-9XA.NO', + 'XN--VRE-EIKER-K8A.NO', + 'XN--VRGGT-XQAD.NO', + 'XN--VRY-YLA5G.NO', + 'XN--YER-ZNA.NO', + 'XN--YGARDEN-P1A.NO', + 'XN--YSTRE-SLIDRE-UJB.NO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/NP.php b/data/domain/public-suffix/NP.php new file mode 100644 index 00000000..d1223a6d --- /dev/null +++ b/data/domain/public-suffix/NP.php @@ -0,0 +1,10 @@ + [], + 'rules' => [], + 'wildcards' => [ + 'NP', + ], +]; diff --git a/data/domain/public-suffix/NR.php b/data/domain/public-suffix/NR.php index 9e294839..88254301 100644 --- a/data/domain/public-suffix/NR.php +++ b/data/domain/public-suffix/NR.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BIZ.NR', - 'COM.NR', - 'EDU.NR', - 'GOV.NR', - 'INFO.NR', - 'NET.NR', - 'ORG.NR', + 'exceptions' => [], + 'rules' => [ + 'BIZ.NR', + 'COM.NR', + 'EDU.NR', + 'GOV.NR', + 'INFO.NR', + 'NET.NR', + 'ORG.NR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/NU.php b/data/domain/public-suffix/NU.php new file mode 100644 index 00000000..6fa96dd5 --- /dev/null +++ b/data/domain/public-suffix/NU.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'ENTERPRISECLOUD.NU', + 'MERSEINE.NU', + 'MINE.NU', + 'SHACKNET.NU', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/NZ.php b/data/domain/public-suffix/NZ.php index d71b52b3..db6607c8 100644 --- a/data/domain/public-suffix/NZ.php +++ b/data/domain/public-suffix/NZ.php @@ -2,20 +2,25 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.NZ', - 'CO.NZ', - 'CRI.NZ', - 'GEEK.NZ', - 'GEN.NZ', - 'GOVT.NZ', - 'HEALTH.NZ', - 'IWI.NZ', - 'KIWI.NZ', - 'MAORI.NZ', - 'MĀORI.NZ', - 'MIL.NZ', - 'NET.NZ', - 'ORG.NZ', - 'PARLIAMENT.NZ', - 'SCHOOL.NZ', + 'exceptions' => [], + 'rules' => [ + 'AC.NZ', + 'CLOUDNS.NZ', + 'CO.NZ', + 'CRI.NZ', + 'GEEK.NZ', + 'GEN.NZ', + 'GOVT.NZ', + 'HEALTH.NZ', + 'IWI.NZ', + 'KIWI.NZ', + 'MAORI.NZ', + 'MIL.NZ', + 'NET.NZ', + 'ORG.NZ', + 'PARLIAMENT.NZ', + 'SCHOOL.NZ', + 'XN--MORI-QSA.NZ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/OM.php b/data/domain/public-suffix/OM.php index 2fd5357e..b0fd3089 100644 --- a/data/domain/public-suffix/OM.php +++ b/data/domain/public-suffix/OM.php @@ -2,13 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.OM', - 'COM.OM', - 'EDU.OM', - 'GOV.OM', - 'MED.OM', - 'MUSEUM.OM', - 'NET.OM', - 'ORG.OM', - 'PRO.OM', + 'exceptions' => [], + 'rules' => [ + 'CO.OM', + 'COM.OM', + 'EDU.OM', + 'GOV.OM', + 'MED.OM', + 'MUSEUM.OM', + 'NET.OM', + 'ORG.OM', + 'PRO.OM', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ONE.php b/data/domain/public-suffix/ONE.php new file mode 100644 index 00000000..be7704d1 --- /dev/null +++ b/data/domain/public-suffix/ONE.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'SERVICE.ONE', + 'WEBSITE.ONE', + ], + 'wildcards' => [ + 'KIN.ONE', + ], +]; diff --git a/data/domain/public-suffix/ONLINE.php b/data/domain/public-suffix/ONLINE.php new file mode 100644 index 00000000..115a0e70 --- /dev/null +++ b/data/domain/public-suffix/ONLINE.php @@ -0,0 +1,14 @@ + [], + 'rules' => [ + 'BARSY.ONLINE', + 'EERO-STAGE.ONLINE', + 'EERO.ONLINE', + 'LEAPCELL.ONLINE', + 'WEBSITEBUILDER.ONLINE', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/ORANGE.php b/data/domain/public-suffix/ORANGE.php new file mode 100644 index 00000000..eb0e9ef7 --- /dev/null +++ b/data/domain/public-suffix/ORANGE.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'TECH.ORANGE', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/ORG.php b/data/domain/public-suffix/ORG.php new file mode 100644 index 00000000..6c5125f1 --- /dev/null +++ b/data/domain/public-suffix/ORG.php @@ -0,0 +1,184 @@ + [], + 'rules' => [ + 'ACCESSCAM.ORG', + 'AE.ORG', + 'AL.EU.ORG', + 'ALTERVISTA.ORG', + 'APP.OS.FEDORAPROJECT.ORG', + 'APP.OS.STG.FEDORAPROJECT.ORG', + 'ASSO.EU.ORG', + 'AT.EU.ORG', + 'AU.EU.ORG', + 'BARSY.ORG', + 'BE.EU.ORG', + 'BETA.WMCLOUD.ORG', + 'BG.EU.ORG', + 'BLOGDNS.ORG', + 'BLOGSITE.ORG', + 'BMOATTACHMENTS.ORG', + 'BOLDLYGOINGNOWHERE.ORG', + 'C.CDN77.ORG', + 'CA.EU.ORG', + 'CABLE-MODEM.ORG', + 'CAMDVR.ORG', + 'CD.EU.ORG', + 'CH.EU.ORG', + 'CLOUD.FEDORAPROJECT.ORG', + 'CLOUDNS.ORG', + 'CN.EU.ORG', + 'COLLEGEFAN.ORG', + 'COUCHPOTATOFRIES.ORG', + 'CY.EU.ORG', + 'CZ.EU.ORG', + 'DDNSS.ORG', + 'DE.EU.ORG', + 'DK.EU.ORG', + 'DNSALIAS.ORG', + 'DNSDOJO.ORG', + 'DOESNTEXIST.ORG', + 'DONTEXIST.ORG', + 'DOOMDNS.ORG', + 'DPDNS.ORG', + 'DSMYNAS.ORG', + 'DUCKDNS.ORG', + 'DVRDNS.ORG', + 'DYNALIAS.ORG', + 'DYNDNS.ORG', + 'DYNSERV.ORG', + 'EDU.EU.ORG', + 'EE.EU.ORG', + 'ENDOFINTERNET.ORG', + 'ENDOFTHEINTERNET.ORG', + 'ES.EU.ORG', + 'EU.ORG', + 'FAMILYDS.ORG', + 'FEDORAINFRACLOUD.ORG', + 'FEDORAPEOPLE.ORG', + 'FI.EU.ORG', + 'FR.EU.ORG', + 'FREEDDNS.ORG', + 'FREEDESKTOP.ORG', + 'FROM-ME.ORG', + 'GAME-HOST.ORG', + 'GO.DYNDNS.ORG', + 'GOTDNS.ORG', + 'GR.EU.ORG', + 'HATENADIARY.ORG', + 'HEPFORGE.ORG', + 'HK.ORG', + 'HOBBY-SITE.ORG', + 'HOME.DYNDNS.ORG', + 'HOMEDNS.ORG', + 'HOMEFTP.ORG', + 'HOMELINUX.ORG', + 'HOMEUNIX.ORG', + 'HOPTO.ORG', + 'HR.EU.ORG', + 'HTTPBIN.ORG', + 'HU.EU.ORG', + 'IE.EU.ORG', + 'IL.EU.ORG', + 'IN-DSL.ORG', + 'IN-VPN.ORG', + 'IN.EU.ORG', + 'INT.EU.ORG', + 'IP-DYNAMIC.ORG', + 'IS-A-BRUINSFAN.ORG', + 'IS-A-CANDIDATE.ORG', + 'IS-A-CELTICSFAN.ORG', + 'IS-A-CHEF.ORG', + 'IS-A-GEEK.ORG', + 'IS-A-KNIGHT.ORG', + 'IS-A-LINUX-USER.ORG', + 'IS-A-PATSFAN.ORG', + 'IS-A-SOXFAN.ORG', + 'IS-FOUND.ORG', + 'IS-LOCAL.ORG', + 'IS-LOST.ORG', + 'IS-SAVED.ORG', + 'IS-VERY-BAD.ORG', + 'IS-VERY-EVIL.ORG', + 'IS-VERY-GOOD.ORG', + 'IS-VERY-NICE.ORG', + 'IS-VERY-SWEET.ORG', + 'IS.EU.ORG', + 'ISA-GEEK.ORG', + 'IT.EU.ORG', + 'JP.EU.ORG', + 'JPN.ORG', + 'JS.ORG', + 'KICKS-ASS.ORG', + 'KR.EU.ORG', + 'LT.EU.ORG', + 'LU.EU.ORG', + 'LV.EU.ORG', + 'MAYFIRST.ORG', + 'ME.EU.ORG', + 'MISCONFUSED.ORG', + 'MK.EU.ORG', + 'MLBFAN.ORG', + 'MT.EU.ORG', + 'MY-FIREWALL.ORG', + 'MY.EU.ORG', + 'MYFIREWALL.ORG', + 'MYFTP.ORG', + 'MYSECURITYCAMERA.ORG', + 'MYWIRE.ORG', + 'NET.EU.ORG', + 'NFLFAN.ORG', + 'NG.EU.ORG', + 'NL.EU.ORG', + 'NO-IP.ORG', + 'NO.EU.ORG', + 'NOW-DNS.ORG', + 'NZ.EU.ORG', + 'PIMIENTA.ORG', + 'PL.EU.ORG', + 'PODZONE.ORG', + 'POIVRON.ORG', + 'POTAGER.ORG', + 'PT.EU.ORG', + 'PUBTLS.ORG', + 'READ-BOOKS.ORG', + 'READMYBLOG.ORG', + 'RO.EU.ORG', + 'ROUTINGTHECLOUD.ORG', + 'ROXA.ORG', + 'RSC.CDN77.ORG', + 'RU.EU.ORG', + 'S3.TECKIDS.ORG', + 'SE.EU.ORG', + 'SELFIP.ORG', + 'SELLSYOURHOME.ORG', + 'SERVEBBS.ORG', + 'SERVEFTP.ORG', + 'SERVEGAME.ORG', + 'SI.EU.ORG', + 'SK.EU.ORG', + 'SMALL-WEB.ORG', + 'SPDNS.ORG', + 'SSL.ORIGIN.CDN77-SECURE.ORG', + 'STUFF-4-SALE.ORG', + 'SWEETPEPPER.ORG', + 'TOOLFORGE.ORG', + 'TR.EU.ORG', + 'TUNK.ORG', + 'TUXFAMILY.ORG', + 'TWMAIL.ORG', + 'UFCFAN.ORG', + 'UK.EU.ORG', + 'US.EU.ORG', + 'US.ORG', + 'WEBHOP.ORG', + 'WEBREDIRECT.ORG', + 'WMCLOUD.ORG', + 'WMFLABS.ORG', + 'ZA.ORG', + 'ZAPTO.ORG', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/OVH.php b/data/domain/public-suffix/OVH.php new file mode 100644 index 00000000..ce600de7 --- /dev/null +++ b/data/domain/public-suffix/OVH.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'NERDPOL.OVH', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/PA.php b/data/domain/public-suffix/PA.php index e161ee38..ba5c1ffc 100644 --- a/data/domain/public-suffix/PA.php +++ b/data/domain/public-suffix/PA.php @@ -2,15 +2,19 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ABO.PA', - 'AC.PA', - 'COM.PA', - 'EDU.PA', - 'GOB.PA', - 'ING.PA', - 'MED.PA', - 'NET.PA', - 'NOM.PA', - 'ORG.PA', - 'SLD.PA', + 'exceptions' => [], + 'rules' => [ + 'ABO.PA', + 'AC.PA', + 'COM.PA', + 'EDU.PA', + 'GOB.PA', + 'ING.PA', + 'MED.PA', + 'NET.PA', + 'NOM.PA', + 'ORG.PA', + 'SLD.PA', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PAGE.php b/data/domain/public-suffix/PAGE.php new file mode 100644 index 00000000..eb0706d2 --- /dev/null +++ b/data/domain/public-suffix/PAGE.php @@ -0,0 +1,19 @@ + [], + 'rules' => [ + 'AEM.PAGE', + 'CODEBERG.PAGE', + 'DEUXFLEURS.PAGE', + 'HEYFLOW.PAGE', + 'HLX.PAGE', + 'PDNS.PAGE', + 'PLESK.PAGE', + 'PRVCY.PAGE', + 'ROCKY.PAGE', + 'STATICHOST.PAGE', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/PE.php b/data/domain/public-suffix/PE.php index 976636c0..97fa3836 100644 --- a/data/domain/public-suffix/PE.php +++ b/data/domain/public-suffix/PE.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.PE', - 'EDU.PE', - 'GOB.PE', - 'MIL.PE', - 'NET.PE', - 'NOM.PE', - 'ORG.PE', + 'exceptions' => [], + 'rules' => [ + 'COM.PE', + 'EDU.PE', + 'GOB.PE', + 'MIL.PE', + 'NET.PE', + 'NOM.PE', + 'ORG.PE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PF.php b/data/domain/public-suffix/PF.php index 23440d29..5fc05a20 100644 --- a/data/domain/public-suffix/PF.php +++ b/data/domain/public-suffix/PF.php @@ -2,7 +2,11 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.PF', - 'EDU.PF', - 'ORG.PF', + 'exceptions' => [], + 'rules' => [ + 'COM.PF', + 'EDU.PF', + 'ORG.PF', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PG.php b/data/domain/public-suffix/PG.php new file mode 100644 index 00000000..ef650dd4 --- /dev/null +++ b/data/domain/public-suffix/PG.php @@ -0,0 +1,10 @@ + [], + 'rules' => [], + 'wildcards' => [ + 'PG', + ], +]; diff --git a/data/domain/public-suffix/PH.php b/data/domain/public-suffix/PH.php index 53c4ce02..d0cde78e 100644 --- a/data/domain/public-suffix/PH.php +++ b/data/domain/public-suffix/PH.php @@ -2,12 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.PH', - 'EDU.PH', - 'GOV.PH', - 'I.PH', - 'MIL.PH', - 'NET.PH', - 'NGO.PH', - 'ORG.PH', + 'exceptions' => [], + 'rules' => [ + 'CLOUDNS.PH', + 'COM.PH', + 'EDU.PH', + 'GOV.PH', + 'I.PH', + 'MIL.PH', + 'NET.PH', + 'NGO.PH', + 'ORG.PH', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PHOTOS.php b/data/domain/public-suffix/PHOTOS.php new file mode 100644 index 00000000..1cecbf88 --- /dev/null +++ b/data/domain/public-suffix/PHOTOS.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'FRAMER.PHOTOS', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/PICTURES.php b/data/domain/public-suffix/PICTURES.php new file mode 100644 index 00000000..ad9579cf --- /dev/null +++ b/data/domain/public-suffix/PICTURES.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + '1337.PICTURES', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/PIZZA.php b/data/domain/public-suffix/PIZZA.php new file mode 100644 index 00000000..e343ee2d --- /dev/null +++ b/data/domain/public-suffix/PIZZA.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'NGROK.PIZZA', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/PK.php b/data/domain/public-suffix/PK.php index 3515f025..5dd85c85 100644 --- a/data/domain/public-suffix/PK.php +++ b/data/domain/public-suffix/PK.php @@ -2,19 +2,23 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.PK', - 'BIZ.PK', - 'COM.PK', - 'EDU.PK', - 'FAM.PK', - 'GKP.PK', - 'GOB.PK', - 'GOG.PK', - 'GOK.PK', - 'GOP.PK', - 'GOS.PK', - 'GOV.PK', - 'NET.PK', - 'ORG.PK', - 'WEB.PK', + 'exceptions' => [], + 'rules' => [ + 'AC.PK', + 'BIZ.PK', + 'COM.PK', + 'EDU.PK', + 'FAM.PK', + 'GKP.PK', + 'GOB.PK', + 'GOG.PK', + 'GOK.PK', + 'GOP.PK', + 'GOS.PK', + 'GOV.PK', + 'NET.PK', + 'ORG.PK', + 'WEB.PK', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PL.php b/data/domain/public-suffix/PL.php index 2a97de95..4b4b05e9 100644 --- a/data/domain/public-suffix/PL.php +++ b/data/domain/public-suffix/PL.php @@ -2,212 +2,254 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.PL', - 'NET.PL', - 'ORG.PL', - 'AGRO.PL', - 'AID.PL', - 'ATM.PL', - 'AUTO.PL', - 'BIZ.PL', - 'EDU.PL', - 'GMINA.PL', - 'GSM.PL', - 'INFO.PL', - 'MAIL.PL', - 'MEDIA.PL', - 'MIASTA.PL', - 'MIL.PL', - 'NIERUCHOMOSCI.PL', - 'NOM.PL', - 'PC.PL', - 'POWIAT.PL', - 'PRIV.PL', - 'REALESTATE.PL', - 'REL.PL', - 'SEX.PL', - 'SHOP.PL', - 'SKLEP.PL', - 'SOS.PL', - 'SZKOLA.PL', - 'TARGI.PL', - 'TM.PL', - 'TOURISM.PL', - 'TRAVEL.PL', - 'TURYSTYKA.PL', - 'GOV.PL', - 'AP.GOV.PL', - 'GRIW.GOV.PL', - 'IC.GOV.PL', - 'IS.GOV.PL', - 'KMPSP.GOV.PL', - 'KONSULAT.GOV.PL', - 'KPPSP.GOV.PL', - 'KWP.GOV.PL', - 'KWPSP.GOV.PL', - 'MUP.GOV.PL', - 'MW.GOV.PL', - 'OIA.GOV.PL', - 'OIRM.GOV.PL', - 'OKE.GOV.PL', - 'OOW.GOV.PL', - 'OSCHR.GOV.PL', - 'OUM.GOV.PL', - 'PA.GOV.PL', - 'PINB.GOV.PL', - 'PIW.GOV.PL', - 'PO.GOV.PL', - 'PR.GOV.PL', - 'PSP.GOV.PL', - 'PSSE.GOV.PL', - 'PUP.GOV.PL', - 'RZGW.GOV.PL', - 'SA.GOV.PL', - 'SDN.GOV.PL', - 'SKO.GOV.PL', - 'SO.GOV.PL', - 'SR.GOV.PL', - 'STAROSTWO.GOV.PL', - 'UG.GOV.PL', - 'UGIM.GOV.PL', - 'UM.GOV.PL', - 'UMIG.GOV.PL', - 'UPOW.GOV.PL', - 'UPPO.GOV.PL', - 'US.GOV.PL', - 'UW.GOV.PL', - 'UZS.GOV.PL', - 'WIF.GOV.PL', - 'WIIH.GOV.PL', - 'WINB.GOV.PL', - 'WIOS.GOV.PL', - 'WITD.GOV.PL', - 'WIW.GOV.PL', - 'WKZ.GOV.PL', - 'WSA.GOV.PL', - 'WSKR.GOV.PL', - 'WSSE.GOV.PL', - 'WUOZ.GOV.PL', - 'WZMIUW.GOV.PL', - 'ZP.GOV.PL', - 'ZPISDN.GOV.PL', - 'AUGUSTOW.PL', - 'BABIA-GORA.PL', - 'BEDZIN.PL', - 'BESKIDY.PL', - 'BIALOWIEZA.PL', - 'BIALYSTOK.PL', - 'BIELAWA.PL', - 'BIESZCZADY.PL', - 'BOLESLAWIEC.PL', - 'BYDGOSZCZ.PL', - 'BYTOM.PL', - 'CIESZYN.PL', - 'CZELADZ.PL', - 'CZEST.PL', - 'DLUGOLEKA.PL', - 'ELBLAG.PL', - 'ELK.PL', - 'GLOGOW.PL', - 'GNIEZNO.PL', - 'GORLICE.PL', - 'GRAJEWO.PL', - 'ILAWA.PL', - 'JAWORZNO.PL', - 'JELENIA-GORA.PL', - 'JGORA.PL', - 'KALISZ.PL', - 'KARPACZ.PL', - 'KARTUZY.PL', - 'KASZUBY.PL', - 'KATOWICE.PL', - 'KAZIMIERZ-DOLNY.PL', - 'KEPNO.PL', - 'KETRZYN.PL', - 'KLODZKO.PL', - 'KOBIERZYCE.PL', - 'KOLOBRZEG.PL', - 'KONIN.PL', - 'KONSKOWOLA.PL', - 'KUTNO.PL', - 'LAPY.PL', - 'LEBORK.PL', - 'LEGNICA.PL', - 'LEZAJSK.PL', - 'LIMANOWA.PL', - 'LOMZA.PL', - 'LOWICZ.PL', - 'LUBIN.PL', - 'LUKOW.PL', - 'MALBORK.PL', - 'MALOPOLSKA.PL', - 'MAZOWSZE.PL', - 'MAZURY.PL', - 'MIELEC.PL', - 'MIELNO.PL', - 'MRAGOWO.PL', - 'NAKLO.PL', - 'NOWARUDA.PL', - 'NYSA.PL', - 'OLAWA.PL', - 'OLECKO.PL', - 'OLKUSZ.PL', - 'OLSZTYN.PL', - 'OPOCZNO.PL', - 'OPOLE.PL', - 'OSTRODA.PL', - 'OSTROLEKA.PL', - 'OSTROWIEC.PL', - 'OSTROWWLKP.PL', - 'PILA.PL', - 'PISZ.PL', - 'PODHALE.PL', - 'PODLASIE.PL', - 'POLKOWICE.PL', - 'POMORSKIE.PL', - 'POMORZE.PL', - 'PROCHOWICE.PL', - 'PRUSZKOW.PL', - 'PRZEWORSK.PL', - 'PULAWY.PL', - 'RADOM.PL', - 'RAWA-MAZ.PL', - 'RYBNIK.PL', - 'RZESZOW.PL', - 'SANOK.PL', - 'SEJNY.PL', - 'SKOCZOW.PL', - 'SLASK.PL', - 'SLUPSK.PL', - 'SOSNOWIEC.PL', - 'STALOWA-WOLA.PL', - 'STARACHOWICE.PL', - 'STARGARD.PL', - 'SUWALKI.PL', - 'SWIDNICA.PL', - 'SWIEBODZIN.PL', - 'SWINOUJSCIE.PL', - 'SZCZECIN.PL', - 'SZCZYTNO.PL', - 'TARNOBRZEG.PL', - 'TGORY.PL', - 'TUREK.PL', - 'TYCHY.PL', - 'USTKA.PL', - 'WALBRZYCH.PL', - 'WARMIA.PL', - 'WARSZAWA.PL', - 'WAW.PL', - 'WEGROW.PL', - 'WIELUN.PL', - 'WLOCL.PL', - 'WLOCLAWEK.PL', - 'WODZISLAW.PL', - 'WOLOMIN.PL', - 'WROCLAW.PL', - 'ZACHPOMOR.PL', - 'ZAGAN.PL', - 'ZAROW.PL', - 'ZGORA.PL', - 'ZGORZELEC.PL', + 'exceptions' => [], + 'rules' => [ + 'AGRO.PL', + 'AID.PL', + 'AP.GOV.PL', + 'ART.PL', + 'ATM.PL', + 'AUGUSTOW.PL', + 'AUTO.PL', + 'BABIA-GORA.PL', + 'BEDZIN.PL', + 'BEEP.PL', + 'BESKIDY.PL', + 'BIALOWIEZA.PL', + 'BIALYSTOK.PL', + 'BIELAWA.PL', + 'BIELSKO.PL', + 'BIESZCZADY.PL', + 'BIZ.PL', + 'BOLESLAWIEC.PL', + 'BYDGOSZCZ.PL', + 'BYTOM.PL', + 'CFOLKS.PL', + 'CIESZYN.PL', + 'CO.PL', + 'COM.PL', + 'CZELADZ.PL', + 'CZEST.PL', + 'DFIRMA.PL', + 'DKONTO.PL', + 'DLUGOLEKA.PL', + 'ECOMMERCE-SHOP.PL', + 'EDU.PL', + 'ELBLAG.PL', + 'ELK.PL', + 'GDA.PL', + 'GDANSK.PL', + 'GDYNIA.PL', + 'GLIWICE.PL', + 'GLOGOW.PL', + 'GMINA.PL', + 'GNIEZNO.PL', + 'GORLICE.PL', + 'GOV.PL', + 'GRAJEWO.PL', + 'GRIW.GOV.PL', + 'GSM.PL', + 'HOMESKLEP.PL', + 'IC.GOV.PL', + 'ILAWA.PL', + 'INFO.PL', + 'IS.GOV.PL', + 'JAWORZNO.PL', + 'JELENIA-GORA.PL', + 'JGORA.PL', + 'KALISZ.PL', + 'KARPACZ.PL', + 'KARTUZY.PL', + 'KASZUBY.PL', + 'KATOWICE.PL', + 'KAZIMIERZ-DOLNY.PL', + 'KEPNO.PL', + 'KETRZYN.PL', + 'KLODZKO.PL', + 'KMPSP.GOV.PL', + 'KOBIERZYCE.PL', + 'KOLOBRZEG.PL', + 'KONIN.PL', + 'KONSKOWOLA.PL', + 'KONSULAT.GOV.PL', + 'KPPSP.GOV.PL', + 'KRAKOW.PL', + 'KRASNIK.PL', + 'KUTNO.PL', + 'KWP.GOV.PL', + 'KWPSP.GOV.PL', + 'LAPY.PL', + 'LEBORK.PL', + 'LECZNA.PL', + 'LEGNICA.PL', + 'LEZAJSK.PL', + 'LIMANOWA.PL', + 'LODZ.PL', + 'LOMZA.PL', + 'LOWICZ.PL', + 'LUBARTOW.PL', + 'LUBIN.PL', + 'LUBLIN.PL', + 'LUKOW.PL', + 'MAIL.PL', + 'MALBORK.PL', + 'MALOPOLSKA.PL', + 'MAZOWSZE.PL', + 'MAZURY.PL', + 'MED.PL', + 'MEDIA.PL', + 'MIASTA.PL', + 'MIELEC.PL', + 'MIELNO.PL', + 'MIL.PL', + 'MRAGOWO.PL', + 'MUP.GOV.PL', + 'MW.GOV.PL', + 'MYSPREADSHOP.PL', + 'NAKLO.PL', + 'NET.PL', + 'NIERUCHOMOSCI.PL', + 'NOM.PL', + 'NOWARUDA.PL', + 'NYSA.PL', + 'OIA.GOV.PL', + 'OIRM.GOV.PL', + 'OKE.GOV.PL', + 'OLAWA.PL', + 'OLECKO.PL', + 'OLKUSZ.PL', + 'OLSZTYN.PL', + 'OOW.GOV.PL', + 'OPOCZNO.PL', + 'OPOLE.PL', + 'ORG.PL', + 'OSCHR.GOV.PL', + 'OSTRODA.PL', + 'OSTROLEKA.PL', + 'OSTROWIEC.PL', + 'OSTROWWLKP.PL', + 'OUM.GOV.PL', + 'PA.GOV.PL', + 'PABIANICE.PL', + 'PC.PL', + 'PILA.PL', + 'PINB.GOV.PL', + 'PISZ.PL', + 'PIW.GOV.PL', + 'PLOCK.PL', + 'PO.GOV.PL', + 'PODHALE.PL', + 'PODLASIE.PL', + 'POLKOWICE.PL', + 'POMORSKIE.PL', + 'POMORZE.PL', + 'PONIATOWA.PL', + 'POWIAT.PL', + 'POZNAN.PL', + 'PR.GOV.PL', + 'PRIV.PL', + 'PROCHOWICE.PL', + 'PRUSZKOW.PL', + 'PRZEWORSK.PL', + 'PSP.GOV.PL', + 'PSSE.GOV.PL', + 'PULAWY.PL', + 'PUP.GOV.PL', + 'RADOM.PL', + 'RAWA-MAZ.PL', + 'REALESTATE.PL', + 'REL.PL', + 'RYBNIK.PL', + 'RZESZOW.PL', + 'RZGW.GOV.PL', + 'SA.GOV.PL', + 'SANOK.PL', + 'SDN.GOV.PL', + 'SDSCLOUD.PL', + 'SEJNY.PL', + 'SEX.PL', + 'SHOP.PL', + 'SHOPARENA.PL', + 'SIERADZ.PL', + 'SIMPLESITE.PL', + 'SKIERNIEWICE.PL', + 'SKLEP.PL', + 'SKO.GOV.PL', + 'SKOCZOW.PL', + 'SLASK.PL', + 'SLUPSK.PL', + 'SO.GOV.PL', + 'SOPOT.PL', + 'SOS.PL', + 'SOSNOWIEC.PL', + 'SR.GOV.PL', + 'STALOWA-WOLA.PL', + 'STARACHOWICE.PL', + 'STARGARD.PL', + 'STAROSTWO.GOV.PL', + 'SUWALKI.PL', + 'SWIDNICA.PL', + 'SWIDNIK.PL', + 'SWIEBODZIN.PL', + 'SWINOUJSCIE.PL', + 'SZCZECIN.PL', + 'SZCZYTNO.PL', + 'SZKOLA.PL', + 'TARGI.PL', + 'TARNOBRZEG.PL', + 'TGORY.PL', + 'TM.PL', + 'TORUN.PL', + 'TOURISM.PL', + 'TRAVEL.PL', + 'TUREK.PL', + 'TURYSTYKA.PL', + 'TYCHY.PL', + 'UG.GOV.PL', + 'UGIM.GOV.PL', + 'UM.GOV.PL', + 'UMIG.GOV.PL', + 'UNICLOUD.PL', + 'UPOW.GOV.PL', + 'UPPO.GOV.PL', + 'US.GOV.PL', + 'USTKA.PL', + 'UW.GOV.PL', + 'UZS.GOV.PL', + 'WALBRZYCH.PL', + 'WARMIA.PL', + 'WARSZAWA.PL', + 'WAW.PL', + 'WEGROW.PL', + 'WIELUN.PL', + 'WIF.GOV.PL', + 'WIIH.GOV.PL', + 'WINB.GOV.PL', + 'WIOS.GOV.PL', + 'WITD.GOV.PL', + 'WIW.GOV.PL', + 'WKZ.GOV.PL', + 'WLOCL.PL', + 'WLOCLAWEK.PL', + 'WODZISLAW.PL', + 'WOLOMIN.PL', + 'WROC.PL', + 'WROCLAW.PL', + 'WSA.GOV.PL', + 'WSKR.GOV.PL', + 'WSSE.GOV.PL', + 'WUOZ.GOV.PL', + 'WZMIUW.GOV.PL', + 'YOU2.PL', + 'ZACHPOMOR.PL', + 'ZAGAN.PL', + 'ZAKOPANE.PL', + 'ZAROW.PL', + 'ZGIERZ.PL', + 'ZGORA.PL', + 'ZGORZELEC.PL', + 'ZP.GOV.PL', + 'ZPISDN.GOV.PL', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PLACE.php b/data/domain/public-suffix/PLACE.php new file mode 100644 index 00000000..a20294f4 --- /dev/null +++ b/data/domain/public-suffix/PLACE.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'CO.PLACE', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/PLUS.php b/data/domain/public-suffix/PLUS.php new file mode 100644 index 00000000..41e195f2 --- /dev/null +++ b/data/domain/public-suffix/PLUS.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'PLAYIT.PLUS', + 'WITH.PLAYIT.PLUS', + ], + 'wildcards' => [ + 'AT.PLAYIT.PLUS', + ], +]; diff --git a/data/domain/public-suffix/PM.php b/data/domain/public-suffix/PM.php new file mode 100644 index 00000000..5e412a68 --- /dev/null +++ b/data/domain/public-suffix/PM.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'NAME.PM', + 'OWN.PM', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/PN.php b/data/domain/public-suffix/PN.php index 50de6c16..6026b2cc 100644 --- a/data/domain/public-suffix/PN.php +++ b/data/domain/public-suffix/PN.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.PN', - 'EDU.PN', - 'GOV.PN', - 'NET.PN', - 'ORG.PN', + 'exceptions' => [], + 'rules' => [ + 'CO.PN', + 'EDU.PN', + 'GOV.PN', + 'NET.PN', + 'ORG.PN', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PR.php b/data/domain/public-suffix/PR.php index 3ec8dfe8..38051315 100644 --- a/data/domain/public-suffix/PR.php +++ b/data/domain/public-suffix/PR.php @@ -2,17 +2,21 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BIZ.PR', - 'COM.PR', - 'EDU.PR', - 'GOV.PR', - 'INFO.PR', - 'ISLA.PR', - 'NAME.PR', - 'NET.PR', - 'ORG.PR', - 'PRO.PR', - 'AC.PR', - 'EST.PR', - 'PROF.PR', + 'exceptions' => [], + 'rules' => [ + 'AC.PR', + 'BIZ.PR', + 'COM.PR', + 'EDU.PR', + 'EST.PR', + 'GOV.PR', + 'INFO.PR', + 'ISLA.PR', + 'NAME.PR', + 'NET.PR', + 'ORG.PR', + 'PRO.PR', + 'PROF.PR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PRO.php b/data/domain/public-suffix/PRO.php index 65d3e854..96abad7d 100644 --- a/data/domain/public-suffix/PRO.php +++ b/data/domain/public-suffix/PRO.php @@ -2,15 +2,23 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AAA.PRO', - 'ACA.PRO', - 'ACCT.PRO', - 'AVOCAT.PRO', - 'BAR.PRO', - 'CPA.PRO', - 'ENG.PRO', - 'JUR.PRO', - 'LAW.PRO', - 'MED.PRO', - 'RECHT.PRO', + 'exceptions' => [], + 'rules' => [ + 'AAA.PRO', + 'ACA.PRO', + 'ACCT.PRO', + 'AVOCAT.PRO', + 'BAR.PRO', + 'BARSY.PRO', + 'CLOUDNS.PRO', + 'CPA.PRO', + 'ENG.PRO', + 'JUR.PRO', + 'KEENETIC.PRO', + 'LAW.PRO', + 'MED.PRO', + 'NGROK.PRO', + 'RECHT.PRO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PS.php b/data/domain/public-suffix/PS.php index c75585fd..c944e62e 100644 --- a/data/domain/public-suffix/PS.php +++ b/data/domain/public-suffix/PS.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.PS', - 'EDU.PS', - 'GOV.PS', - 'NET.PS', - 'ORG.PS', - 'PLO.PS', - 'SEC.PS', + 'exceptions' => [], + 'rules' => [ + 'COM.PS', + 'EDU.PS', + 'GOV.PS', + 'NET.PS', + 'ORG.PS', + 'PLO.PS', + 'SEC.PS', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PT.php b/data/domain/public-suffix/PT.php index da6306e7..b4620883 100644 --- a/data/domain/public-suffix/PT.php +++ b/data/domain/public-suffix/PT.php @@ -2,12 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.PT', - 'EDU.PT', - 'GOV.PT', - 'INT.PT', - 'NET.PT', - 'NOME.PT', - 'ORG.PT', - 'PUBL.PT', + 'exceptions' => [], + 'rules' => [ + '123PAGINAWEB.PT', + 'COM.PT', + 'EDU.PT', + 'GOV.PT', + 'INT.PT', + 'NET.PT', + 'NOME.PT', + 'ORG.PT', + 'PUBL.PT', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PUB.php b/data/domain/public-suffix/PUB.php new file mode 100644 index 00000000..640db2da --- /dev/null +++ b/data/domain/public-suffix/PUB.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'BARSY.PUB', + ], + 'wildcards' => [ + 'ID.PUB', + 'KIN.PUB', + ], +]; diff --git a/data/domain/public-suffix/PW.php b/data/domain/public-suffix/PW.php index 6fea0e87..ef1608ad 100644 --- a/data/domain/public-suffix/PW.php +++ b/data/domain/public-suffix/PW.php @@ -2,5 +2,11 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.PW', + 'exceptions' => [], + 'rules' => [ + 'CLOUDNS.PW', + 'GOV.PW', + 'X443.PW', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/PY.php b/data/domain/public-suffix/PY.php index de87241f..4813379f 100644 --- a/data/domain/public-suffix/PY.php +++ b/data/domain/public-suffix/PY.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.PY', - 'COOP.PY', - 'EDU.PY', - 'GOV.PY', - 'MIL.PY', - 'NET.PY', - 'ORG.PY', + 'exceptions' => [], + 'rules' => [ + 'COM.PY', + 'COOP.PY', + 'EDU.PY', + 'GOV.PY', + 'MIL.PY', + 'NET.PY', + 'ORG.PY', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/QA.php b/data/domain/public-suffix/QA.php index 912cdf5b..0fc4dee5 100644 --- a/data/domain/public-suffix/QA.php +++ b/data/domain/public-suffix/QA.php @@ -2,12 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.QA', - 'EDU.QA', - 'GOV.QA', - 'MIL.QA', - 'NAME.QA', - 'NET.QA', - 'ORG.QA', - 'SCH.QA', + 'exceptions' => [], + 'rules' => [ + 'COM.QA', + 'EDU.QA', + 'GOV.QA', + 'MIL.QA', + 'NAME.QA', + 'NET.QA', + 'ORG.QA', + 'SCH.QA', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/RE.php b/data/domain/public-suffix/RE.php index 9fefbcc5..aed94779 100644 --- a/data/domain/public-suffix/RE.php +++ b/data/domain/public-suffix/RE.php @@ -2,6 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ASSO.RE', - 'COM.RE', + 'exceptions' => [], + 'rules' => [ + 'ASSO.RE', + 'CAN.RE', + 'COM.RE', + 'NETLIB.RE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/REVIEWS.php b/data/domain/public-suffix/REVIEWS.php new file mode 100644 index 00000000..03d2d862 --- /dev/null +++ b/data/domain/public-suffix/REVIEWS.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'AEM.REVIEWS', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/RIP.php b/data/domain/public-suffix/RIP.php new file mode 100644 index 00000000..52e9a637 --- /dev/null +++ b/data/domain/public-suffix/RIP.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'CLAN.RIP', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/RO.php b/data/domain/public-suffix/RO.php index c501756f..dbbeea35 100644 --- a/data/domain/public-suffix/RO.php +++ b/data/domain/public-suffix/RO.php @@ -2,15 +2,22 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ARTS.RO', - 'COM.RO', - 'FIRM.RO', - 'INFO.RO', - 'NOM.RO', - 'NT.RO', - 'ORG.RO', - 'REC.RO', - 'STORE.RO', - 'TM.RO', - 'WWW.RO', + 'exceptions' => [], + 'rules' => [ + 'ARTS.RO', + 'BARSY.RO', + 'CO.RO', + 'COM.RO', + 'FIRM.RO', + 'INFO.RO', + 'NOM.RO', + 'NT.RO', + 'ORG.RO', + 'REC.RO', + 'SHOP.RO', + 'STORE.RO', + 'TM.RO', + 'WWW.RO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ROCKS.php b/data/domain/public-suffix/ROCKS.php new file mode 100644 index 00000000..2fe99fc0 --- /dev/null +++ b/data/domain/public-suffix/ROCKS.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'LIMA-CITY.ROCKS', + 'MYDDNS.ROCKS', + 'STACKIT.ROCKS', + 'WEBSPACE.ROCKS', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/RS.php b/data/domain/public-suffix/RS.php index 06dd6106..05166a20 100644 --- a/data/domain/public-suffix/RS.php +++ b/data/domain/public-suffix/RS.php @@ -2,10 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.RS', - 'CO.RS', - 'EDU.RS', - 'GOV.RS', - 'IN.RS', - 'ORG.RS', + 'exceptions' => [], + 'rules' => [ + 'AC.RS', + 'BARSY.RS', + 'CO.RS', + 'EDU.RS', + 'GOV.RS', + 'IN.RS', + 'ORG.RS', + 'OX.RS', + 'SHOP.BRENDLY.RS', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/RU.php b/data/domain/public-suffix/RU.php new file mode 100644 index 00000000..a8f4303b --- /dev/null +++ b/data/domain/public-suffix/RU.php @@ -0,0 +1,50 @@ + [], + 'rules' => [ + 'AC.RU', + 'ADYGEYA.RU', + 'BASHKIRIA.RU', + 'BIR.RU', + 'CBG.RU', + 'COM.RU', + 'DAGESTAN.RU', + 'EDU.RU', + 'EURODIR.RU', + 'GOV.RU', + 'GROZNY.RU', + 'HB.CLDMAIL.RU', + 'INT.RU', + 'KALMYKIA.RU', + 'KUSTANAI.RU', + 'MARINE.RU', + 'MCDIR.RU', + 'MCPRE.RU', + 'MIL.RU', + 'MIRCLOUD.RU', + 'MORDOVIA.RU', + 'MSK.RU', + 'MYJINO.RU', + 'MYTIS.RU', + 'NA4U.RU', + 'NALCHIK.RU', + 'NET.RU', + 'NOV.RU', + 'ORG.RU', + 'PP.RU', + 'PYATIGORSK.RU', + 'RAS.RU', + 'SPB.RU', + 'VLADIKAVKAZ.RU', + 'VLADIMIR.RU', + 'VPS.MCDIR.RU', + ], + 'wildcards' => [ + 'HOSTING.MYJINO.RU', + 'LANDING.MYJINO.RU', + 'SPECTRUM.MYJINO.RU', + 'VPS.MYJINO.RU', + ], +]; diff --git a/data/domain/public-suffix/RUN.php b/data/domain/public-suffix/RUN.php new file mode 100644 index 00000000..6f6ca2cd --- /dev/null +++ b/data/domain/public-suffix/RUN.php @@ -0,0 +1,29 @@ + [], + 'rules' => [ + 'CANVA.RUN', + 'DEVELOPMENT.RUN', + 'IRAN.LIARA.RUN', + 'LIARA.RUN', + 'LOVABLE.RUN', + 'NEEDLE.RUN', + 'ONPORTER.RUN', + 'RAVENDB.RUN', + 'REPL.RUN', + 'STACKIT.RUN', + 'VAL.RUN', + 'VERCEL.RUN', + 'WEB.VAL.RUN', + 'WIX.RUN', + ], + 'wildcards' => [ + 'APPWRITE.RUN', + 'BUILD.RUN', + 'CODE.RUN', + 'DATABASE.RUN', + 'MIGRATION.RUN', + ], +]; diff --git a/data/domain/public-suffix/RW.php b/data/domain/public-suffix/RW.php index 3e1863b5..8319ca93 100644 --- a/data/domain/public-suffix/RW.php +++ b/data/domain/public-suffix/RW.php @@ -2,11 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.RW', - 'CO.RW', - 'COOP.RW', - 'GOV.RW', - 'MIL.RW', - 'NET.RW', - 'ORG.RW', + 'exceptions' => [], + 'rules' => [ + 'AC.RW', + 'CO.RW', + 'COOP.RW', + 'GOV.RW', + 'MIL.RW', + 'NET.RW', + 'ORG.RW', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SA.php b/data/domain/public-suffix/SA.php index 14c2f195..560d2c26 100644 --- a/data/domain/public-suffix/SA.php +++ b/data/domain/public-suffix/SA.php @@ -2,12 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.SA', - 'EDU.SA', - 'GOV.SA', - 'MED.SA', - 'NET.SA', - 'ORG.SA', - 'PUB.SA', - 'SCH.SA', + 'exceptions' => [], + 'rules' => [ + 'COM.SA', + 'EDU.SA', + 'GOV.SA', + 'MED.SA', + 'NET.SA', + 'ORG.SA', + 'PUB.SA', + 'SCH.SA', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SB.php b/data/domain/public-suffix/SB.php index 59537354..4c2e1ae9 100644 --- a/data/domain/public-suffix/SB.php +++ b/data/domain/public-suffix/SB.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.SB', - 'EDU.SB', - 'GOV.SB', - 'NET.SB', - 'ORG.SB', + 'exceptions' => [], + 'rules' => [ + 'COM.SB', + 'EDU.SB', + 'GOV.SB', + 'NET.SB', + 'ORG.SB', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SC.php b/data/domain/public-suffix/SC.php index 8162fe0c..e1a82b90 100644 --- a/data/domain/public-suffix/SC.php +++ b/data/domain/public-suffix/SC.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.SC', - 'EDU.SC', - 'GOV.SC', - 'NET.SC', - 'ORG.SC', + 'exceptions' => [], + 'rules' => [ + 'COM.SC', + 'EDU.SC', + 'GOV.SC', + 'NET.SC', + 'ORG.SC', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SCOT.php b/data/domain/public-suffix/SCOT.php new file mode 100644 index 00000000..2671874a --- /dev/null +++ b/data/domain/public-suffix/SCOT.php @@ -0,0 +1,14 @@ + [], + 'rules' => [ + 'CO.SCOT', + 'GOV.SCOT', + 'ME.SCOT', + 'ORG.SCOT', + 'SERVICE.GOV.SCOT', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/SD.php b/data/domain/public-suffix/SD.php index 4d060d26..30b9537a 100644 --- a/data/domain/public-suffix/SD.php +++ b/data/domain/public-suffix/SD.php @@ -2,12 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.SD', - 'EDU.SD', - 'GOV.SD', - 'INFO.SD', - 'MED.SD', - 'NET.SD', - 'ORG.SD', - 'TV.SD', + 'exceptions' => [], + 'rules' => [ + 'COM.SD', + 'EDU.SD', + 'GOV.SD', + 'INFO.SD', + 'MED.SD', + 'NET.SD', + 'ORG.SD', + 'TV.SD', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SE.php b/data/domain/public-suffix/SE.php index dd73687c..9efeb3e5 100644 --- a/data/domain/public-suffix/SE.php +++ b/data/domain/public-suffix/SE.php @@ -2,43 +2,52 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'A.SE', - 'AC.SE', - 'B.SE', - 'BD.SE', - 'BRAND.SE', - 'C.SE', - 'D.SE', - 'E.SE', - 'F.SE', - 'FH.SE', - 'FHSK.SE', - 'FHV.SE', - 'G.SE', - 'H.SE', - 'I.SE', - 'K.SE', - 'KOMFORB.SE', - 'KOMMUNALFORBUND.SE', - 'KOMVUX.SE', - 'L.SE', - 'LANBIB.SE', - 'M.SE', - 'N.SE', - 'NATURBRUKSGYMN.SE', - 'O.SE', - 'ORG.SE', - 'P.SE', - 'PARTI.SE', - 'PP.SE', - 'PRESS.SE', - 'R.SE', - 'S.SE', - 'T.SE', - 'TM.SE', - 'U.SE', - 'W.SE', - 'X.SE', - 'Y.SE', - 'Z.SE', + 'exceptions' => [], + 'rules' => [ + '123MINSIDA.SE', + 'A.SE', + 'AC.SE', + 'B.SE', + 'BD.SE', + 'BRAND.SE', + 'C.SE', + 'COM.SE', + 'D.SE', + 'E.SE', + 'F.SE', + 'FH.SE', + 'FHSK.SE', + 'FHV.SE', + 'G.SE', + 'H.SE', + 'I.SE', + 'IOPSYS.SE', + 'ITCOULDBEWOR.SE', + 'K.SE', + 'KOMFORB.SE', + 'KOMMUNALFORBUND.SE', + 'KOMVUX.SE', + 'L.SE', + 'LANBIB.SE', + 'M.SE', + 'MYSPREADSHOP.SE', + 'N.SE', + 'NATURBRUKSGYMN.SE', + 'O.SE', + 'ORG.SE', + 'P.SE', + 'PARTI.SE', + 'PP.SE', + 'PRESS.SE', + 'R.SE', + 'S.SE', + 'T.SE', + 'TM.SE', + 'U.SE', + 'W.SE', + 'X.SE', + 'Y.SE', + 'Z.SE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SERVICES.php b/data/domain/public-suffix/SERVICES.php new file mode 100644 index 00000000..33be33a3 --- /dev/null +++ b/data/domain/public-suffix/SERVICES.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'LOGINLINE.SERVICES', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/SG.php b/data/domain/public-suffix/SG.php index 6d63d1eb..8956eecb 100644 --- a/data/domain/public-suffix/SG.php +++ b/data/domain/public-suffix/SG.php @@ -2,9 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.SG', - 'EDU.SG', - 'GOV.SG', - 'NET.SG', - 'ORG.SG', + 'exceptions' => [], + 'rules' => [ + 'COM.SG', + 'EDU.SG', + 'ENSCALED.SG', + 'GOV.SG', + 'NET.SG', + 'ORG.SG', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SH.php b/data/domain/public-suffix/SH.php index 77d373e8..ca0b5b2d 100644 --- a/data/domain/public-suffix/SH.php +++ b/data/domain/public-suffix/SH.php @@ -2,9 +2,21 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.SH', - 'GOV.SH', - 'MIL.SH', - 'NET.SH', - 'ORG.SH', + 'exceptions' => [], + 'rules' => [ + 'BOTDA.SH', + 'COM.SH', + 'ENT.PLATFORM.SH', + 'EU.PLATFORM.SH', + 'GOV.SH', + 'HASHBANG.SH', + 'LOVABLE.SH', + 'MIL.SH', + 'NET.SH', + 'NOW.SH', + 'ORG.SH', + 'TELEPORT.SH', + 'US.PLATFORM.SH', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SHOP.php b/data/domain/public-suffix/SHOP.php new file mode 100644 index 00000000..fcd36755 --- /dev/null +++ b/data/domain/public-suffix/SHOP.php @@ -0,0 +1,14 @@ + [], + 'rules' => [ + 'BARSY.SHOP', + 'BARSYONLINE.SHOP', + 'BASE.SHOP', + 'HOPLIX.SHOP', + 'SHOPWARE.SHOP', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/SI.php b/data/domain/public-suffix/SI.php new file mode 100644 index 00000000..4f331a87 --- /dev/null +++ b/data/domain/public-suffix/SI.php @@ -0,0 +1,12 @@ + [], + 'rules' => [ + 'F5.SI', + 'GITAPP.SI', + 'GITPAGE.SI', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/SITE.php b/data/domain/public-suffix/SITE.php new file mode 100644 index 00000000..2559efd9 --- /dev/null +++ b/data/domain/public-suffix/SITE.php @@ -0,0 +1,42 @@ + [], + 'rules' => [ + 'BARSY.SITE', + 'BYEN.SITE', + 'CAFFEINE.SITE', + 'CO.SITE', + 'CONVEX.SITE', + 'CPANEL.SITE', + 'CYON.SITE', + 'EU-WEST-1.CONVEX.SITE', + 'FASTVPS.SITE', + 'FIGMA-GOV.SITE', + 'FIGMA.SITE', + 'HEYFLOW.SITE', + 'JELE.SITE', + 'JOUWWEB.SITE', + 'LOGINLINE.SITE', + 'MADETHIS.SITE', + 'MY.CANVA.SITE', + 'NOTION.SITE', + 'NOVECORE.SITE', + 'OMNIWE.SITE', + 'OPENSOCIAL.SITE', + 'PREVIEW.SITE', + 'SOL.SITE', + 'SOURCECRAFT.SITE', + 'SQUARE.SITE', + 'SRHT.SITE', + 'SUPPORT.SITE', + 'US-EAST-1.CONVEX.SITE', + 'WPSQUARED.SITE', + ], + 'wildcards' => [ + 'CLOUDERA.SITE', + 'PLATFORMSH.SITE', + 'TST.SITE', + ], +]; diff --git a/data/domain/public-suffix/SK.php b/data/domain/public-suffix/SK.php index 5f057702..e96db724 100644 --- a/data/domain/public-suffix/SK.php +++ b/data/domain/public-suffix/SK.php @@ -2,5 +2,9 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ORG.SK', + 'exceptions' => [], + 'rules' => [ + 'ORG.SK', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SL.php b/data/domain/public-suffix/SL.php index 0c471352..d6186027 100644 --- a/data/domain/public-suffix/SL.php +++ b/data/domain/public-suffix/SL.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.SL', - 'EDU.SL', - 'GOV.SL', - 'NET.SL', - 'ORG.SL', + 'exceptions' => [], + 'rules' => [ + 'COM.SL', + 'EDU.SL', + 'GOV.SL', + 'NET.SL', + 'ORG.SL', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SN.php b/data/domain/public-suffix/SN.php index 24d6bb3e..acb899f3 100644 --- a/data/domain/public-suffix/SN.php +++ b/data/domain/public-suffix/SN.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ART.SN', - 'COM.SN', - 'EDU.SN', - 'GOUV.SN', - 'ORG.SN', - 'UNIV.SN', + 'exceptions' => [], + 'rules' => [ + 'ART.SN', + 'COM.SN', + 'EDU.SN', + 'GOUV.SN', + 'ORG.SN', + 'UNIV.SN', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SO.php b/data/domain/public-suffix/SO.php index 9dc91571..a8dbaf9b 100644 --- a/data/domain/public-suffix/SO.php +++ b/data/domain/public-suffix/SO.php @@ -2,10 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.SO', - 'EDU.SO', - 'GOV.SO', - 'ME.SO', - 'NET.SO', - 'ORG.SO', + 'exceptions' => [], + 'rules' => [ + 'COM.SO', + 'EDU.SO', + 'GOV.SO', + 'ME.SO', + 'NET.SO', + 'ORG.SO', + 'SURVEYS.SO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SPACE.php b/data/domain/public-suffix/SPACE.php new file mode 100644 index 00000000..7391b999 --- /dev/null +++ b/data/domain/public-suffix/SPACE.php @@ -0,0 +1,17 @@ + [], + 'rules' => [ + 'APP-IONOS.SPACE', + 'HEIYU.SPACE', + 'HF.SPACE', + 'MYFAST.SPACE', + 'PROJECT.SPACE', + 'STATIC.HF.SPACE', + 'UBER.SPACE', + 'XS4ALL.SPACE', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/SS.php b/data/domain/public-suffix/SS.php index a69d19da..5b5cb782 100644 --- a/data/domain/public-suffix/SS.php +++ b/data/domain/public-suffix/SS.php @@ -2,13 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BIZ.SS', - 'CO.SS', - 'COM.SS', - 'EDU.SS', - 'GOV.SS', - 'ME.SS', - 'NET.SS', - 'ORG.SS', - 'SCH.SS', + 'exceptions' => [], + 'rules' => [ + 'BIZ.SS', + 'CO.SS', + 'COM.SS', + 'EDU.SS', + 'GOV.SS', + 'ME.SS', + 'NET.SS', + 'ORG.SS', + 'SCH.SS', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ST.php b/data/domain/public-suffix/ST.php index f2b2bb32..5298c948 100644 --- a/data/domain/public-suffix/ST.php +++ b/data/domain/public-suffix/ST.php @@ -2,15 +2,24 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.ST', - 'COM.ST', - 'CONSULADO.ST', - 'EDU.ST', - 'EMBAIXADA.ST', - 'MIL.ST', - 'NET.ST', - 'ORG.ST', - 'PRINCIPE.ST', - 'SAOTOME.ST', - 'STORE.ST', + 'exceptions' => [], + 'rules' => [ + 'CO.ST', + 'COM.ST', + 'CONSULADO.ST', + 'EDU.ST', + 'EMBAIXADA.ST', + 'HELIOHO.ST', + 'KIRARA.ST', + 'MIL.ST', + 'NET.ST', + 'NOHO.ST', + 'ORG.ST', + 'PRINCIPE.ST', + 'SAOTOME.ST', + 'STORE.ST', + ], + 'wildcards' => [ + 'CN.ST', + ], ]; diff --git a/data/domain/public-suffix/STORE.php b/data/domain/public-suffix/STORE.php new file mode 100644 index 00000000..4b661790 --- /dev/null +++ b/data/domain/public-suffix/STORE.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'BARSY.STORE', + 'SELLFY.STORE', + 'SHOPWARE.STORE', + 'STOREBASE.STORE', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/SU.php b/data/domain/public-suffix/SU.php new file mode 100644 index 00000000..5b4dfc31 --- /dev/null +++ b/data/domain/public-suffix/SU.php @@ -0,0 +1,61 @@ + [], + 'rules' => [ + 'ABKHAZIA.SU', + 'ADYGEYA.SU', + 'AKTYUBINSK.SU', + 'ARKHANGELSK.SU', + 'ARMENIA.SU', + 'ASHGABAD.SU', + 'AZERBAIJAN.SU', + 'BALASHOV.SU', + 'BASHKIRIA.SU', + 'BRYANSK.SU', + 'BUKHARA.SU', + 'CHIMKENT.SU', + 'DAGESTAN.SU', + 'EAST-KAZAKHSTAN.SU', + 'EXNET.SU', + 'GEORGIA.SU', + 'GROZNY.SU', + 'IVANOVO.SU', + 'JAMBYL.SU', + 'KALMYKIA.SU', + 'KALUGA.SU', + 'KARACOL.SU', + 'KARAGANDA.SU', + 'KARELIA.SU', + 'KHAKASSIA.SU', + 'KRASNODAR.SU', + 'KURGAN.SU', + 'KUSTANAI.SU', + 'LENUG.SU', + 'MANGYSHLAK.SU', + 'MORDOVIA.SU', + 'MSK.SU', + 'MURMANSK.SU', + 'NALCHIK.SU', + 'NAVOI.SU', + 'NORTH-KAZAKHSTAN.SU', + 'NOV.SU', + 'OBNINSK.SU', + 'PENZA.SU', + 'POKROVSK.SU', + 'SOCHI.SU', + 'SPB.SU', + 'TASHKENT.SU', + 'TERMEZ.SU', + 'TOGLIATTI.SU', + 'TROITSK.SU', + 'TSELINOGRAD.SU', + 'TULA.SU', + 'TUVA.SU', + 'VLADIKAVKAZ.SU', + 'VLADIMIR.SU', + 'VOLOGDA.SU', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/SUPPORT.php b/data/domain/public-suffix/SUPPORT.php new file mode 100644 index 00000000..70cefa7b --- /dev/null +++ b/data/domain/public-suffix/SUPPORT.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'BARSY.SUPPORT', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/SV.php b/data/domain/public-suffix/SV.php index 731e5aa6..8ef20342 100644 --- a/data/domain/public-suffix/SV.php +++ b/data/domain/public-suffix/SV.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.SV', - 'EDU.SV', - 'GOB.SV', - 'ORG.SV', - 'RED.SV', + 'exceptions' => [], + 'rules' => [ + 'COM.SV', + 'EDU.SV', + 'GOB.SV', + 'ORG.SV', + 'RED.SV', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SX.php b/data/domain/public-suffix/SX.php index eb875b26..e37acd11 100644 --- a/data/domain/public-suffix/SX.php +++ b/data/domain/public-suffix/SX.php @@ -2,5 +2,9 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.SX', + 'exceptions' => [], + 'rules' => [ + 'GOV.SX', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SY.php b/data/domain/public-suffix/SY.php index 87341e21..43a3ec75 100644 --- a/data/domain/public-suffix/SY.php +++ b/data/domain/public-suffix/SY.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.SY', - 'EDU.SY', - 'GOV.SY', - 'MIL.SY', - 'NET.SY', - 'ORG.SY', + 'exceptions' => [], + 'rules' => [ + 'COM.SY', + 'EDU.SY', + 'GOV.SY', + 'MIL.SY', + 'NET.SY', + 'ORG.SY', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/SYSTEMS.php b/data/domain/public-suffix/SYSTEMS.php new file mode 100644 index 00000000..22e8edc4 --- /dev/null +++ b/data/domain/public-suffix/SYSTEMS.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'KNIGHTPOINT.SYSTEMS', + 'MIREN.SYSTEMS', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/SZ.php b/data/domain/public-suffix/SZ.php index 3141764f..9302c8a2 100644 --- a/data/domain/public-suffix/SZ.php +++ b/data/domain/public-suffix/SZ.php @@ -2,7 +2,11 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.SZ', - 'CO.SZ', - 'ORG.SZ', + 'exceptions' => [], + 'rules' => [ + 'AC.SZ', + 'CO.SZ', + 'ORG.SZ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/TEAM.php b/data/domain/public-suffix/TEAM.php new file mode 100644 index 00000000..7ea7e639 --- /dev/null +++ b/data/domain/public-suffix/TEAM.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'DISCOURSE.TEAM', + 'JELASTIC.TEAM', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/TECH.php b/data/domain/public-suffix/TECH.php new file mode 100644 index 00000000..9f5fd17e --- /dev/null +++ b/data/domain/public-suffix/TECH.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'CLEVERAPPS.TECH', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/TECHNOLOGY.php b/data/domain/public-suffix/TECHNOLOGY.php new file mode 100644 index 00000000..1cb7c62d --- /dev/null +++ b/data/domain/public-suffix/TECHNOLOGY.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'CO.TECHNOLOGY', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/TF.php b/data/domain/public-suffix/TF.php new file mode 100644 index 00000000..8ae5970c --- /dev/null +++ b/data/domain/public-suffix/TF.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'SCH.TF', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/TH.php b/data/domain/public-suffix/TH.php index 82fe074c..fc5dbab7 100644 --- a/data/domain/public-suffix/TH.php +++ b/data/domain/public-suffix/TH.php @@ -2,11 +2,17 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.TH', - 'CO.TH', - 'GO.TH', - 'IN.TH', - 'MI.TH', - 'NET.TH', - 'OR.TH', + 'exceptions' => [], + 'rules' => [ + 'AC.TH', + 'CO.TH', + 'GO.TH', + 'IN.TH', + 'MI.TH', + 'NET.TH', + 'ONLINE.TH', + 'OR.TH', + 'SHOP.TH', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/TJ.php b/data/domain/public-suffix/TJ.php index 75cc42ef..95cdcc7f 100644 --- a/data/domain/public-suffix/TJ.php +++ b/data/domain/public-suffix/TJ.php @@ -2,19 +2,23 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.TJ', - 'BIZ.TJ', - 'CO.TJ', - 'COM.TJ', - 'EDU.TJ', - 'GO.TJ', - 'GOV.TJ', - 'INT.TJ', - 'MIL.TJ', - 'NAME.TJ', - 'NET.TJ', - 'NIC.TJ', - 'ORG.TJ', - 'TEST.TJ', - 'WEB.TJ', + 'exceptions' => [], + 'rules' => [ + 'AC.TJ', + 'BIZ.TJ', + 'CO.TJ', + 'COM.TJ', + 'EDU.TJ', + 'GO.TJ', + 'GOV.TJ', + 'INT.TJ', + 'MIL.TJ', + 'NAME.TJ', + 'NET.TJ', + 'NIC.TJ', + 'ORG.TJ', + 'TEST.TJ', + 'WEB.TJ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/TL.php b/data/domain/public-suffix/TL.php index 05f627d3..4a2a3932 100644 --- a/data/domain/public-suffix/TL.php +++ b/data/domain/public-suffix/TL.php @@ -2,5 +2,9 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'GOV.TL', + 'exceptions' => [], + 'rules' => [ + 'GOV.TL', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/TM.php b/data/domain/public-suffix/TM.php index d30c0657..d85c40e3 100644 --- a/data/domain/public-suffix/TM.php +++ b/data/domain/public-suffix/TM.php @@ -2,12 +2,16 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.TM', - 'COM.TM', - 'EDU.TM', - 'GOV.TM', - 'MIL.TM', - 'NET.TM', - 'NOM.TM', - 'ORG.TM', + 'exceptions' => [], + 'rules' => [ + 'CO.TM', + 'COM.TM', + 'EDU.TM', + 'GOV.TM', + 'MIL.TM', + 'NET.TM', + 'NOM.TM', + 'ORG.TM', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/TN.php b/data/domain/public-suffix/TN.php index 0cd0a8bd..46e214b5 100644 --- a/data/domain/public-suffix/TN.php +++ b/data/domain/public-suffix/TN.php @@ -2,17 +2,22 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.TN', - 'ENS.TN', - 'FIN.TN', - 'GOV.TN', - 'IND.TN', - 'INFO.TN', - 'INTL.TN', - 'MINCOM.TN', - 'NAT.TN', - 'NET.TN', - 'ORG.TN', - 'PERSO.TN', - 'TOURISM.TN', + 'exceptions' => [], + 'rules' => [ + 'COM.TN', + 'ENS.TN', + 'FIN.TN', + 'GOV.TN', + 'IND.TN', + 'INFO.TN', + 'INTL.TN', + 'MINCOM.TN', + 'NAT.TN', + 'NET.TN', + 'ORANGECLOUD.TN', + 'ORG.TN', + 'PERSO.TN', + 'TOURISM.TN', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/TO.php b/data/domain/public-suffix/TO.php index e45c7d06..0f01b9e0 100644 --- a/data/domain/public-suffix/TO.php +++ b/data/domain/public-suffix/TO.php @@ -2,10 +2,20 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.TO', - 'EDU.TO', - 'GOV.TO', - 'MIL.TO', - 'NET.TO', - 'ORG.TO', + 'exceptions' => [], + 'rules' => [ + '611.TO', + 'COM.TO', + 'DIRECT.QUICKCONNECT.TO', + 'EDU.TO', + 'GOV.TO', + 'MIL.TO', + 'NET.TO', + 'NETT.TO', + 'ORG.TO', + 'OYA.TO', + 'VPNPLUS.TO', + 'X0.TO', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/TODAY.php b/data/domain/public-suffix/TODAY.php new file mode 100644 index 00000000..6bd96a60 --- /dev/null +++ b/data/domain/public-suffix/TODAY.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'PREQUALIFYME.TODAY', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/TOOLS.php b/data/domain/public-suffix/TOOLS.php new file mode 100644 index 00000000..4ee7d733 --- /dev/null +++ b/data/domain/public-suffix/TOOLS.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'DYN.ADDR.TOOLS', + 'MYADDR.TOOLS', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/TOP.php b/data/domain/public-suffix/TOP.php new file mode 100644 index 00000000..6234fb18 --- /dev/null +++ b/data/domain/public-suffix/TOP.php @@ -0,0 +1,12 @@ + [], + 'rules' => [ + 'NTDLL.TOP', + ], + 'wildcards' => [ + 'WADL.TOP', + ], +]; diff --git a/data/domain/public-suffix/TR.php b/data/domain/public-suffix/TR.php index c48105f0..3a66a9d9 100644 --- a/data/domain/public-suffix/TR.php +++ b/data/domain/public-suffix/TR.php @@ -2,27 +2,31 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AV.TR', - 'BBS.TR', - 'BEL.TR', - 'BIZ.TR', - 'COM.TR', - 'DR.TR', - 'EDU.TR', - 'GEN.TR', - 'GOV.TR', - 'INFO.TR', - 'K12.TR', - 'KEP.TR', - 'MIL.TR', - 'NAME.TR', - 'NET.TR', - 'ORG.TR', - 'POL.TR', - 'TEL.TR', - 'TSK.TR', - 'TV.TR', - 'WEB.TR', - 'NC.TR', - 'GOV.NC.TR', + 'exceptions' => [], + 'rules' => [ + 'AV.TR', + 'BBS.TR', + 'BEL.TR', + 'BIZ.TR', + 'COM.TR', + 'DR.TR', + 'EDU.TR', + 'GEN.TR', + 'GOV.NC.TR', + 'GOV.TR', + 'INFO.TR', + 'K12.TR', + 'KEP.TR', + 'MIL.TR', + 'NAME.TR', + 'NC.TR', + 'NET.TR', + 'ORG.TR', + 'POL.TR', + 'TEL.TR', + 'TSK.TR', + 'TV.TR', + 'WEB.TR', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/TT.php b/data/domain/public-suffix/TT.php index 377e8db5..f2ba572c 100644 --- a/data/domain/public-suffix/TT.php +++ b/data/domain/public-suffix/TT.php @@ -2,15 +2,19 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'BIZ.TT', - 'CO.TT', - 'COM.TT', - 'EDU.TT', - 'GOV.TT', - 'INFO.TT', - 'MIL.TT', - 'NAME.TT', - 'NET.TT', - 'ORG.TT', - 'PRO.TT', + 'exceptions' => [], + 'rules' => [ + 'BIZ.TT', + 'CO.TT', + 'COM.TT', + 'EDU.TT', + 'GOV.TT', + 'INFO.TT', + 'MIL.TT', + 'NAME.TT', + 'NET.TT', + 'ORG.TT', + 'PRO.TT', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/TV.php b/data/domain/public-suffix/TV.php new file mode 100644 index 00000000..103711b1 --- /dev/null +++ b/data/domain/public-suffix/TV.php @@ -0,0 +1,15 @@ + [], + 'rules' => [ + 'BETTER-THAN.TV', + 'DYNDNS.TV', + 'FROM.TV', + 'ON-THE-WEB.TV', + 'SAKURA.TV', + 'WORSE-THAN.TV', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/TW.php b/data/domain/public-suffix/TW.php index 6b323d97..9fa965d5 100644 --- a/data/domain/public-suffix/TW.php +++ b/data/domain/public-suffix/TW.php @@ -2,14 +2,21 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CLUB.TW', - 'COM.TW', - 'EBIZ.TW', - 'EDU.TW', - 'GAME.TW', - 'GOV.TW', - 'IDV.TW', - 'MIL.TW', - 'NET.TW', - 'ORG.TW', + 'exceptions' => [], + 'rules' => [ + 'CLUB.TW', + 'COM.TW', + 'EBIZ.TW', + 'EDU.TW', + 'GAME.TW', + 'GOV.TW', + 'IDV.TW', + 'MIL.TW', + 'MYDNS.TW', + 'MYMAILER.COM.TW', + 'NET.TW', + 'ORG.TW', + 'URL.TW', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/TZ.php b/data/domain/public-suffix/TZ.php index 3644627d..a11b623e 100644 --- a/data/domain/public-suffix/TZ.php +++ b/data/domain/public-suffix/TZ.php @@ -2,16 +2,20 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.TZ', - 'CO.TZ', - 'GO.TZ', - 'HOTEL.TZ', - 'INFO.TZ', - 'ME.TZ', - 'MIL.TZ', - 'MOBI.TZ', - 'NE.TZ', - 'OR.TZ', - 'SC.TZ', - 'TV.TZ', + 'exceptions' => [], + 'rules' => [ + 'AC.TZ', + 'CO.TZ', + 'GO.TZ', + 'HOTEL.TZ', + 'INFO.TZ', + 'ME.TZ', + 'MIL.TZ', + 'MOBI.TZ', + 'NE.TZ', + 'OR.TZ', + 'SC.TZ', + 'TV.TZ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/UA.php b/data/domain/public-suffix/UA.php index 43b79f6a..4968ae6a 100644 --- a/data/domain/public-suffix/UA.php +++ b/data/domain/public-suffix/UA.php @@ -2,83 +2,95 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.UA', - 'EDU.UA', - 'GOV.UA', - 'IN.UA', - 'NET.UA', - 'ORG.UA', - 'CHERKASSY.UA', - 'CHERKASY.UA', - 'CHERNIGOV.UA', - 'CHERNIHIV.UA', - 'CHERNIVTSI.UA', - 'CHERNOVTSY.UA', - 'CK.UA', - 'CN.UA', - 'CR.UA', - 'CRIMEA.UA', - 'CV.UA', - 'DN.UA', - 'DNEPROPETROVSK.UA', - 'DNIPROPETROVSK.UA', - 'DONETSK.UA', - 'DP.UA', - 'IF.UA', - 'IVANO-FRANKIVSK.UA', - 'KH.UA', - 'KHARKIV.UA', - 'KHARKOV.UA', - 'KHERSON.UA', - 'KHMELNITSKIY.UA', - 'KHMELNYTSKYI.UA', - 'KIEV.UA', - 'KIROVOGRAD.UA', - 'KM.UA', - 'KR.UA', - 'KROPYVNYTSKYI.UA', - 'KRYM.UA', - 'KS.UA', - 'KV.UA', - 'KYIV.UA', - 'LG.UA', - 'LT.UA', - 'LUGANSK.UA', - 'LUHANSK.UA', - 'LUTSK.UA', - 'LV.UA', - 'LVIV.UA', - 'MK.UA', - 'MYKOLAIV.UA', - 'NIKOLAEV.UA', - 'OD.UA', - 'ODESA.UA', - 'ODESSA.UA', - 'PL.UA', - 'POLTAVA.UA', - 'RIVNE.UA', - 'ROVNO.UA', - 'RV.UA', - 'SB.UA', - 'SEBASTOPOL.UA', - 'SEVASTOPOL.UA', - 'SM.UA', - 'SUMY.UA', - 'TE.UA', - 'TERNOPIL.UA', - 'UZ.UA', - 'UZHGOROD.UA', - 'UZHHOROD.UA', - 'VINNICA.UA', - 'VINNYTSIA.UA', - 'VN.UA', - 'VOLYN.UA', - 'YALTA.UA', - 'ZAKARPATTIA.UA', - 'ZAPORIZHZHE.UA', - 'ZAPORIZHZHIA.UA', - 'ZHITOMIR.UA', - 'ZHYTOMYR.UA', - 'ZP.UA', - 'ZT.UA', + 'exceptions' => [], + 'rules' => [ + 'BIZ.UA', + 'CC.UA', + 'CHERKASSY.UA', + 'CHERKASY.UA', + 'CHERNIGOV.UA', + 'CHERNIHIV.UA', + 'CHERNIVTSI.UA', + 'CHERNOVTSY.UA', + 'CK.UA', + 'CN.UA', + 'CO.UA', + 'COM.UA', + 'CR.UA', + 'CRIMEA.UA', + 'CV.UA', + 'CX.UA', + 'DN.UA', + 'DNEPROPETROVSK.UA', + 'DNIPROPETROVSK.UA', + 'DONETSK.UA', + 'DP.UA', + 'EDU.UA', + 'GOV.UA', + 'IF.UA', + 'IN.UA', + 'INF.UA', + 'IVANO-FRANKIVSK.UA', + 'KH.UA', + 'KHARKIV.UA', + 'KHARKOV.UA', + 'KHERSON.UA', + 'KHMELNITSKIY.UA', + 'KHMELNYTSKYI.UA', + 'KIEV.UA', + 'KIROVOGRAD.UA', + 'KM.UA', + 'KR.UA', + 'KROPYVNYTSKYI.UA', + 'KRYM.UA', + 'KS.UA', + 'KV.UA', + 'KYIV.UA', + 'LG.UA', + 'LT.UA', + 'LTD.UA', + 'LUGANSK.UA', + 'LUHANSK.UA', + 'LUTSK.UA', + 'LV.UA', + 'LVIV.UA', + 'MK.UA', + 'MYKOLAIV.UA', + 'NET.UA', + 'NIKOLAEV.UA', + 'OD.UA', + 'ODESA.UA', + 'ODESSA.UA', + 'ORG.UA', + 'PL.UA', + 'POLTAVA.UA', + 'PP.UA', + 'RIVNE.UA', + 'ROVNO.UA', + 'RV.UA', + 'SB.UA', + 'SEBASTOPOL.UA', + 'SEVASTOPOL.UA', + 'SM.UA', + 'SUMY.UA', + 'TE.UA', + 'TERNOPIL.UA', + 'UZ.UA', + 'UZHGOROD.UA', + 'UZHHOROD.UA', + 'V.UA', + 'VINNICA.UA', + 'VINNYTSIA.UA', + 'VN.UA', + 'VOLYN.UA', + 'YALTA.UA', + 'ZAKARPATTIA.UA', + 'ZAPORIZHZHE.UA', + 'ZAPORIZHZHIA.UA', + 'ZHITOMIR.UA', + 'ZHYTOMYR.UA', + 'ZP.UA', + 'ZT.UA', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/UG.php b/data/domain/public-suffix/UG.php index 5c49e43b..f8607383 100644 --- a/data/domain/public-suffix/UG.php +++ b/data/domain/public-suffix/UG.php @@ -2,16 +2,20 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.UG', - 'CO.UG', - 'COM.UG', - 'EDU.UG', - 'GO.UG', - 'GOV.UG', - 'MIL.UG', - 'NE.UG', - 'OR.UG', - 'ORG.UG', - 'SC.UG', - 'US.UG', + 'exceptions' => [], + 'rules' => [ + 'AC.UG', + 'CO.UG', + 'COM.UG', + 'EDU.UG', + 'GO.UG', + 'GOV.UG', + 'MIL.UG', + 'NE.UG', + 'OR.UG', + 'ORG.UG', + 'SC.UG', + 'US.UG', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/UK.php b/data/domain/public-suffix/UK.php index 5036a5b2..7b6c1222 100644 --- a/data/domain/public-suffix/UK.php +++ b/data/domain/public-suffix/UK.php @@ -2,15 +2,53 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.UK', - 'CO.UK', - 'GOV.UK', - 'LTD.UK', - 'ME.UK', - 'NET.UK', - 'NHS.UK', - 'ORG.UK', - 'PLC.UK', - 'POLICE.UK', - 'SCH.UK', + 'exceptions' => [], + 'rules' => [ + 'AC.UK', + 'ADIMO.CO.UK', + 'AFFINITYLOTTERY.ORG.UK', + 'API.GOV.UK', + 'BARSY.CO.UK', + 'BARSY.UK', + 'BARSYONLINE.CO.UK', + 'CAMPAIGN.GOV.UK', + 'CO.UK', + 'CONN.UK', + 'COPRO.UK', + 'CUST.RETROSNUB.CO.UK', + 'DH.BYTEMARK.CO.UK', + 'GLUG.ORG.UK', + 'GOV.UK', + 'HOSP.UK', + 'INDEPENDENT-COMMISSION.UK', + 'INDEPENDENT-INQUEST.UK', + 'INDEPENDENT-INQUIRY.UK', + 'INDEPENDENT-PANEL.UK', + 'INDEPENDENT-REVIEW.UK', + 'J.LAYERSHIFT.CO.UK', + 'LTD.UK', + 'LUG.ORG.UK', + 'LUGS.ORG.UK', + 'ME.UK', + 'MYSPREADSHOP.CO.UK', + 'NET.UK', + 'NH-SERV.CO.UK', + 'NHS.UK', + 'NIMSITE.UK', + 'NO-IP.CO.UK', + 'ORG.UK', + 'PLC.UK', + 'POLICE.UK', + 'PUBLIC-INQUIRY.UK', + 'PYMNT.UK', + 'RAFFLEENTRY.ORG.UK', + 'ROYAL-COMMISSION.UK', + 'SERVICE.GOV.UK', + 'VM.BYTEMARK.CO.UK', + 'WEEKLYLOTTERY.ORG.UK', + ], + 'wildcards' => [ + 'ORACLEGOVCLOUDAPPS.UK', + 'SCH.UK', + ], ]; diff --git a/data/domain/public-suffix/US.php b/data/domain/public-suffix/US.php index 1e02bdd9..3507d795 100644 --- a/data/domain/public-suffix/US.php +++ b/data/domain/public-suffix/US.php @@ -2,229 +2,251 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'DNI.US', - 'ISA.US', - 'NSN.US', - 'AK.US', - 'AL.US', - 'AR.US', - 'AS.US', - 'AZ.US', - 'CA.US', - 'CO.US', - 'CT.US', - 'DC.US', - 'DE.US', - 'FL.US', - 'GA.US', - 'GU.US', - 'HI.US', - 'IA.US', - 'ID.US', - 'IL.US', - 'IN.US', - 'KS.US', - 'KY.US', - 'LA.US', - 'MA.US', - 'MD.US', - 'ME.US', - 'MI.US', - 'MN.US', - 'MO.US', - 'MS.US', - 'MT.US', - 'NC.US', - 'ND.US', - 'NE.US', - 'NH.US', - 'NJ.US', - 'NM.US', - 'NV.US', - 'NY.US', - 'OH.US', - 'OK.US', - 'OR.US', - 'PA.US', - 'PR.US', - 'RI.US', - 'SC.US', - 'SD.US', - 'TN.US', - 'TX.US', - 'UT.US', - 'VA.US', - 'VI.US', - 'VT.US', - 'WA.US', - 'WI.US', - 'WV.US', - 'WY.US', - 'K12.AK.US', - 'K12.AL.US', - 'K12.AR.US', - 'K12.AS.US', - 'K12.AZ.US', - 'K12.CA.US', - 'K12.CO.US', - 'K12.CT.US', - 'K12.DC.US', - 'K12.FL.US', - 'K12.GA.US', - 'K12.GU.US', - 'K12.IA.US', - 'K12.ID.US', - 'K12.IL.US', - 'K12.IN.US', - 'K12.KS.US', - 'K12.KY.US', - 'K12.LA.US', - 'K12.MA.US', - 'K12.MD.US', - 'K12.ME.US', - 'K12.MI.US', - 'K12.MN.US', - 'K12.MO.US', - 'K12.MS.US', - 'K12.MT.US', - 'K12.NC.US', - 'K12.NE.US', - 'K12.NH.US', - 'K12.NJ.US', - 'K12.NM.US', - 'K12.NV.US', - 'K12.NY.US', - 'K12.OH.US', - 'K12.OK.US', - 'K12.OR.US', - 'K12.PA.US', - 'K12.PR.US', - 'K12.SC.US', - 'K12.TN.US', - 'K12.TX.US', - 'K12.UT.US', - 'K12.VA.US', - 'K12.VI.US', - 'K12.VT.US', - 'K12.WA.US', - 'K12.WI.US', - 'CC.AK.US', - 'LIB.AK.US', - 'CC.AL.US', - 'LIB.AL.US', - 'CC.AR.US', - 'LIB.AR.US', - 'CC.AS.US', - 'LIB.AS.US', - 'CC.AZ.US', - 'LIB.AZ.US', - 'CC.CA.US', - 'LIB.CA.US', - 'CC.CO.US', - 'LIB.CO.US', - 'CC.CT.US', - 'LIB.CT.US', - 'CC.DC.US', - 'LIB.DC.US', - 'CC.DE.US', - 'CC.FL.US', - 'LIB.FL.US', - 'CC.GA.US', - 'LIB.GA.US', - 'CC.GU.US', - 'LIB.GU.US', - 'CC.HI.US', - 'LIB.HI.US', - 'CC.IA.US', - 'LIB.IA.US', - 'CC.ID.US', - 'LIB.ID.US', - 'CC.IL.US', - 'LIB.IL.US', - 'CC.IN.US', - 'LIB.IN.US', - 'CC.KS.US', - 'LIB.KS.US', - 'CC.KY.US', - 'LIB.KY.US', - 'CC.LA.US', - 'LIB.LA.US', - 'CC.MA.US', - 'LIB.MA.US', - 'CC.MD.US', - 'LIB.MD.US', - 'CC.ME.US', - 'LIB.ME.US', - 'CC.MI.US', - 'LIB.MI.US', - 'CC.MN.US', - 'LIB.MN.US', - 'CC.MO.US', - 'LIB.MO.US', - 'CC.MS.US', - 'CC.MT.US', - 'LIB.MT.US', - 'CC.NC.US', - 'LIB.NC.US', - 'CC.ND.US', - 'LIB.ND.US', - 'CC.NE.US', - 'LIB.NE.US', - 'CC.NH.US', - 'LIB.NH.US', - 'CC.NJ.US', - 'LIB.NJ.US', - 'CC.NM.US', - 'LIB.NM.US', - 'CC.NV.US', - 'LIB.NV.US', - 'CC.NY.US', - 'LIB.NY.US', - 'CC.OH.US', - 'LIB.OH.US', - 'CC.OK.US', - 'LIB.OK.US', - 'CC.OR.US', - 'LIB.OR.US', - 'CC.PA.US', - 'LIB.PA.US', - 'CC.PR.US', - 'LIB.PR.US', - 'CC.RI.US', - 'LIB.RI.US', - 'CC.SC.US', - 'LIB.SC.US', - 'CC.SD.US', - 'LIB.SD.US', - 'CC.TN.US', - 'LIB.TN.US', - 'CC.TX.US', - 'LIB.TX.US', - 'CC.UT.US', - 'LIB.UT.US', - 'CC.VA.US', - 'LIB.VA.US', - 'CC.VI.US', - 'LIB.VI.US', - 'CC.VT.US', - 'LIB.VT.US', - 'CC.WA.US', - 'LIB.WA.US', - 'CC.WI.US', - 'LIB.WI.US', - 'CC.WV.US', - 'CC.WY.US', - 'K12.WY.US', - 'LIB.WY.US', - 'CHTR.K12.MA.US', - 'PAROCH.K12.MA.US', - 'PVT.K12.MA.US', - 'ANN-ARBOR.MI.US', - 'COG.MI.US', - 'DST.MI.US', - 'EATON.MI.US', - 'GEN.MI.US', - 'MUS.MI.US', - 'TEC.MI.US', - 'WASHTENAW.MI.US', + 'exceptions' => [], + 'rules' => [ + 'AK.US', + 'AL.US', + 'ANN-ARBOR.MI.US', + 'AR.US', + 'AS.US', + 'AZ.US', + 'AZURE-API.US', + 'AZUREWEBSITES.US', + 'CA.US', + 'CC.AK.US', + 'CC.AL.US', + 'CC.AR.US', + 'CC.AS.US', + 'CC.AZ.US', + 'CC.CA.US', + 'CC.CO.US', + 'CC.CT.US', + 'CC.DC.US', + 'CC.DE.US', + 'CC.FL.US', + 'CC.GA.US', + 'CC.GU.US', + 'CC.HI.US', + 'CC.IA.US', + 'CC.ID.US', + 'CC.IL.US', + 'CC.IN.US', + 'CC.KS.US', + 'CC.KY.US', + 'CC.LA.US', + 'CC.MA.US', + 'CC.MD.US', + 'CC.ME.US', + 'CC.MI.US', + 'CC.MN.US', + 'CC.MO.US', + 'CC.MS.US', + 'CC.MT.US', + 'CC.NC.US', + 'CC.ND.US', + 'CC.NE.US', + 'CC.NH.US', + 'CC.NJ.US', + 'CC.NM.US', + 'CC.NV.US', + 'CC.NY.US', + 'CC.OH.US', + 'CC.OK.US', + 'CC.OR.US', + 'CC.PA.US', + 'CC.PR.US', + 'CC.RI.US', + 'CC.SC.US', + 'CC.SD.US', + 'CC.TN.US', + 'CC.TX.US', + 'CC.UT.US', + 'CC.VA.US', + 'CC.VI.US', + 'CC.VT.US', + 'CC.WA.US', + 'CC.WI.US', + 'CC.WV.US', + 'CC.WY.US', + 'CHTR.K12.MA.US', + 'CLOUDNS.US', + 'CO.US', + 'COG.MI.US', + 'CT.US', + 'DC.US', + 'DE.US', + 'DNI.US', + 'DST.MI.US', + 'EATON.MI.US', + 'FL.US', + 'FREEDDNS.US', + 'GA.US', + 'GEN.MI.US', + 'GH.SRV.US', + 'GL.SRV.US', + 'GOLFFAN.US', + 'GU.US', + 'HELIOHOST.US', + 'HI.US', + 'IA.US', + 'ID.US', + 'IL.US', + 'IN.US', + 'IS-BY.US', + 'ISA.US', + 'K12.AK.US', + 'K12.AL.US', + 'K12.AR.US', + 'K12.AS.US', + 'K12.AZ.US', + 'K12.CA.US', + 'K12.CO.US', + 'K12.CT.US', + 'K12.DC.US', + 'K12.FL.US', + 'K12.GA.US', + 'K12.GU.US', + 'K12.IA.US', + 'K12.ID.US', + 'K12.IL.US', + 'K12.IN.US', + 'K12.KS.US', + 'K12.KY.US', + 'K12.LA.US', + 'K12.MA.US', + 'K12.MD.US', + 'K12.ME.US', + 'K12.MI.US', + 'K12.MN.US', + 'K12.MO.US', + 'K12.MS.US', + 'K12.MT.US', + 'K12.NC.US', + 'K12.NE.US', + 'K12.NH.US', + 'K12.NJ.US', + 'K12.NM.US', + 'K12.NV.US', + 'K12.NY.US', + 'K12.OH.US', + 'K12.OK.US', + 'K12.OR.US', + 'K12.PA.US', + 'K12.PR.US', + 'K12.SC.US', + 'K12.TN.US', + 'K12.TX.US', + 'K12.UT.US', + 'K12.VA.US', + 'K12.VI.US', + 'K12.VT.US', + 'K12.WA.US', + 'K12.WI.US', + 'K12.WY.US', + 'KS.US', + 'KY.US', + 'LA.US', + 'LAND-4-SALE.US', + 'LIB.AK.US', + 'LIB.AL.US', + 'LIB.AR.US', + 'LIB.AS.US', + 'LIB.AZ.US', + 'LIB.CA.US', + 'LIB.CO.US', + 'LIB.CT.US', + 'LIB.DC.US', + 'LIB.FL.US', + 'LIB.GA.US', + 'LIB.GU.US', + 'LIB.HI.US', + 'LIB.IA.US', + 'LIB.ID.US', + 'LIB.IL.US', + 'LIB.IN.US', + 'LIB.KS.US', + 'LIB.KY.US', + 'LIB.LA.US', + 'LIB.MA.US', + 'LIB.MD.US', + 'LIB.ME.US', + 'LIB.MI.US', + 'LIB.MN.US', + 'LIB.MO.US', + 'LIB.MT.US', + 'LIB.NC.US', + 'LIB.ND.US', + 'LIB.NE.US', + 'LIB.NH.US', + 'LIB.NJ.US', + 'LIB.NM.US', + 'LIB.NV.US', + 'LIB.NY.US', + 'LIB.OH.US', + 'LIB.OK.US', + 'LIB.OR.US', + 'LIB.PA.US', + 'LIB.PR.US', + 'LIB.RI.US', + 'LIB.SC.US', + 'LIB.SD.US', + 'LIB.TN.US', + 'LIB.TX.US', + 'LIB.UT.US', + 'LIB.VA.US', + 'LIB.VI.US', + 'LIB.VT.US', + 'LIB.WA.US', + 'LIB.WI.US', + 'LIB.WY.US', + 'MA.US', + 'MD.US', + 'ME.US', + 'MI.US', + 'MIRCLOUD.US', + 'MN.US', + 'MO.US', + 'MS.US', + 'MT.US', + 'MUS.MI.US', + 'NC.US', + 'ND.US', + 'NE.US', + 'NGO.US', + 'NH.US', + 'NJ.US', + 'NM.US', + 'NOIP.US', + 'NSN.US', + 'NV.US', + 'NY.US', + 'OH.US', + 'OK.US', + 'OR.US', + 'PA.US', + 'PAROCH.K12.MA.US', + 'PHX.ENSCALED.US', + 'POINTTO.US', + 'PR.US', + 'PVT.K12.MA.US', + 'RI.US', + 'SC.US', + 'SD.US', + 'SERVERNAME.US', + 'SRV.US', + 'STUFF-4-SALE.US', + 'TEC.MI.US', + 'TN.US', + 'TX.US', + 'UT.US', + 'VA.US', + 'VI.US', + 'VT.US', + 'WA.US', + 'WASHTENAW.MI.US', + 'WI.US', + 'WV.US', + 'WY.US', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/UY.php b/data/domain/public-suffix/UY.php index 3ca2a692..80d70740 100644 --- a/data/domain/public-suffix/UY.php +++ b/data/domain/public-suffix/UY.php @@ -2,10 +2,15 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.UY', - 'EDU.UY', - 'GUB.UY', - 'MIL.UY', - 'NET.UY', - 'ORG.UY', + 'exceptions' => [], + 'rules' => [ + 'COM.UY', + 'EDU.UY', + 'GUB.UY', + 'GV.UY', + 'MIL.UY', + 'NET.UY', + 'ORG.UY', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/UZ.php b/data/domain/public-suffix/UZ.php index bee056a0..07ba891e 100644 --- a/data/domain/public-suffix/UZ.php +++ b/data/domain/public-suffix/UZ.php @@ -2,8 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.UZ', - 'COM.UZ', - 'NET.UZ', - 'ORG.UZ', + 'exceptions' => [], + 'rules' => [ + 'CO.UZ', + 'COM.UZ', + 'NET.UZ', + 'ORG.UZ', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/VC.php b/data/domain/public-suffix/VC.php index 805b016c..bc046565 100644 --- a/data/domain/public-suffix/VC.php +++ b/data/domain/public-suffix/VC.php @@ -2,10 +2,19 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.VC', - 'EDU.VC', - 'GOV.VC', - 'MIL.VC', - 'NET.VC', - 'ORG.VC', + 'exceptions' => [], + 'rules' => [ + 'COM.VC', + 'D.GV.VC', + 'EDU.VC', + 'GOV.VC', + 'GV.VC', + 'MIL.VC', + 'MYDNS.VC', + 'NET.VC', + 'ORG.VC', + ], + 'wildcards' => [ + '0E.VC', + ], ]; diff --git a/data/domain/public-suffix/VE.php b/data/domain/public-suffix/VE.php index 77e90b7b..a0f5c5c4 100644 --- a/data/domain/public-suffix/VE.php +++ b/data/domain/public-suffix/VE.php @@ -2,26 +2,30 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ARTS.VE', - 'BIB.VE', - 'CO.VE', - 'COM.VE', - 'E12.VE', - 'EDU.VE', - 'EMPRENDE.VE', - 'FIRM.VE', - 'GOB.VE', - 'GOV.VE', - 'IA.VE', - 'INFO.VE', - 'INT.VE', - 'MIL.VE', - 'NET.VE', - 'NOM.VE', - 'ORG.VE', - 'RAR.VE', - 'REC.VE', - 'STORE.VE', - 'TEC.VE', - 'WEB.VE', + 'exceptions' => [], + 'rules' => [ + 'ARTS.VE', + 'BIB.VE', + 'CO.VE', + 'COM.VE', + 'E12.VE', + 'EDU.VE', + 'EMPRENDE.VE', + 'FIRM.VE', + 'GOB.VE', + 'GOV.VE', + 'IA.VE', + 'INFO.VE', + 'INT.VE', + 'MIL.VE', + 'NET.VE', + 'NOM.VE', + 'ORG.VE', + 'RAR.VE', + 'REC.VE', + 'STORE.VE', + 'TEC.VE', + 'WEB.VE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/VG.php b/data/domain/public-suffix/VG.php index 3b398f93..d8da8bbb 100644 --- a/data/domain/public-suffix/VG.php +++ b/data/domain/public-suffix/VG.php @@ -2,5 +2,9 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'EDU.VG', + 'exceptions' => [], + 'rules' => [ + 'EDU.VG', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/VI.php b/data/domain/public-suffix/VI.php index 3c1ae244..8eeb175c 100644 --- a/data/domain/public-suffix/VI.php +++ b/data/domain/public-suffix/VI.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'CO.VI', - 'COM.VI', - 'K12.VI', - 'NET.VI', - 'ORG.VI', + 'exceptions' => [], + 'rules' => [ + 'CO.VI', + 'COM.VI', + 'K12.VI', + 'NET.VI', + 'ORG.VI', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/VIP.php b/data/domain/public-suffix/VIP.php new file mode 100644 index 00000000..07d9552c --- /dev/null +++ b/data/domain/public-suffix/VIP.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'HIDNS.VIP', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/VN.php b/data/domain/public-suffix/VN.php index d758cf90..fdc23c68 100644 --- a/data/domain/public-suffix/VN.php +++ b/data/domain/public-suffix/VN.php @@ -2,82 +2,87 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.VN', - 'AI.VN', - 'BIZ.VN', - 'COM.VN', - 'EDU.VN', - 'GOV.VN', - 'HEALTH.VN', - 'ID.VN', - 'INFO.VN', - 'INT.VN', - 'IO.VN', - 'NAME.VN', - 'NET.VN', - 'ORG.VN', - 'PRO.VN', - 'ANGIANG.VN', - 'BACGIANG.VN', - 'BACKAN.VN', - 'BACLIEU.VN', - 'BACNINH.VN', - 'BARIA-VUNGTAU.VN', - 'BENTRE.VN', - 'BINHDINH.VN', - 'BINHDUONG.VN', - 'BINHPHUOC.VN', - 'BINHTHUAN.VN', - 'CAMAU.VN', - 'CANTHO.VN', - 'CAOBANG.VN', - 'DAKLAK.VN', - 'DAKNONG.VN', - 'DANANG.VN', - 'DIENBIEN.VN', - 'DONGNAI.VN', - 'DONGTHAP.VN', - 'GIALAI.VN', - 'HAGIANG.VN', - 'HAIDUONG.VN', - 'HAIPHONG.VN', - 'HANAM.VN', - 'HANOI.VN', - 'HATINH.VN', - 'HAUGIANG.VN', - 'HOABINH.VN', - 'HUNGYEN.VN', - 'KHANHHOA.VN', - 'KIENGIANG.VN', - 'KONTUM.VN', - 'LAICHAU.VN', - 'LAMDONG.VN', - 'LANGSON.VN', - 'LAOCAI.VN', - 'LONGAN.VN', - 'NAMDINH.VN', - 'NGHEAN.VN', - 'NINHBINH.VN', - 'NINHTHUAN.VN', - 'PHUTHO.VN', - 'PHUYEN.VN', - 'QUANGBINH.VN', - 'QUANGNAM.VN', - 'QUANGNGAI.VN', - 'QUANGNINH.VN', - 'QUANGTRI.VN', - 'SOCTRANG.VN', - 'SONLA.VN', - 'TAYNINH.VN', - 'THAIBINH.VN', - 'THAINGUYEN.VN', - 'THANHHOA.VN', - 'THANHPHOHOCHIMINH.VN', - 'THUATHIENHUE.VN', - 'TIENGIANG.VN', - 'TRAVINH.VN', - 'TUYENQUANG.VN', - 'VINHLONG.VN', - 'VINHPHUC.VN', - 'YENBAI.VN', + 'exceptions' => [], + 'rules' => [ + 'AC.VN', + 'AI.VN', + 'ANGIANG.VN', + 'BACGIANG.VN', + 'BACKAN.VN', + 'BACLIEU.VN', + 'BACNINH.VN', + 'BARIA-VUNGTAU.VN', + 'BENTRE.VN', + 'BINHDINH.VN', + 'BINHDUONG.VN', + 'BINHPHUOC.VN', + 'BINHTHUAN.VN', + 'BIZ.VN', + 'CAMAU.VN', + 'CANTHO.VN', + 'CAOBANG.VN', + 'COM.VN', + 'DAKLAK.VN', + 'DAKNONG.VN', + 'DANANG.VN', + 'DIENBIEN.VN', + 'DONGNAI.VN', + 'DONGTHAP.VN', + 'EDU.VN', + 'GIALAI.VN', + 'GOV.VN', + 'HAGIANG.VN', + 'HAIDUONG.VN', + 'HAIPHONG.VN', + 'HANAM.VN', + 'HANOI.VN', + 'HATINH.VN', + 'HAUGIANG.VN', + 'HEALTH.VN', + 'HOABINH.VN', + 'HUE.VN', + 'HUNGYEN.VN', + 'ID.VN', + 'INFO.VN', + 'INT.VN', + 'IO.VN', + 'KHANHHOA.VN', + 'KIENGIANG.VN', + 'KONTUM.VN', + 'LAICHAU.VN', + 'LAMDONG.VN', + 'LANGSON.VN', + 'LAOCAI.VN', + 'LONGAN.VN', + 'NAMDINH.VN', + 'NAME.VN', + 'NET.VN', + 'NGHEAN.VN', + 'NINHBINH.VN', + 'NINHTHUAN.VN', + 'ORG.VN', + 'PHUTHO.VN', + 'PHUYEN.VN', + 'PRO.VN', + 'QUANGBINH.VN', + 'QUANGNAM.VN', + 'QUANGNGAI.VN', + 'QUANGNINH.VN', + 'QUANGTRI.VN', + 'SOCTRANG.VN', + 'SONLA.VN', + 'TAYNINH.VN', + 'THAIBINH.VN', + 'THAINGUYEN.VN', + 'THANHHOA.VN', + 'THANHPHOHOCHIMINH.VN', + 'THUATHIENHUE.VN', + 'TIENGIANG.VN', + 'TRAVINH.VN', + 'TUYENQUANG.VN', + 'VINHLONG.VN', + 'VINHPHUC.VN', + 'YENBAI.VN', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/VU.php b/data/domain/public-suffix/VU.php index 7fcb832d..c99f010f 100644 --- a/data/domain/public-suffix/VU.php +++ b/data/domain/public-suffix/VU.php @@ -2,8 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.VU', - 'EDU.VU', - 'NET.VU', - 'ORG.VU', + 'exceptions' => [], + 'rules' => [ + 'COM.VU', + 'EDU.VU', + 'NET.VU', + 'ORG.VU', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/WEBSITE.php b/data/domain/public-suffix/WEBSITE.php new file mode 100644 index 00000000..d2829d05 --- /dev/null +++ b/data/domain/public-suffix/WEBSITE.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'FRAMER.WEBSITE', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/WF.php b/data/domain/public-suffix/WF.php new file mode 100644 index 00000000..3e1b6bc4 --- /dev/null +++ b/data/domain/public-suffix/WF.php @@ -0,0 +1,11 @@ + [], + 'rules' => [ + 'BIZ.WF', + 'SCH.WF', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/WIKI.php b/data/domain/public-suffix/WIKI.php new file mode 100644 index 00000000..815d3206 --- /dev/null +++ b/data/domain/public-suffix/WIKI.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'FRAMER.WIKI', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/WORK.php b/data/domain/public-suffix/WORK.php new file mode 100644 index 00000000..780fa19d --- /dev/null +++ b/data/domain/public-suffix/WORK.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'IMAGINE-PROXY.WORK', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/WS.php b/data/domain/public-suffix/WS.php index 9e885ea3..384ca000 100644 --- a/data/domain/public-suffix/WS.php +++ b/data/domain/public-suffix/WS.php @@ -2,9 +2,18 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.WS', - 'EDU.WS', - 'GOV.WS', - 'NET.WS', - 'ORG.WS', + 'exceptions' => [], + 'rules' => [ + 'CLOUD66.WS', + 'COM.WS', + 'DYNDNS.WS', + 'EDU.WS', + 'GOV.WS', + 'MYPETS.WS', + 'NET.WS', + 'ORG.WS', + ], + 'wildcards' => [ + 'ADVISOR.WS', + ], ]; diff --git a/data/domain/public-suffix/XN--4DBRK0CE.php b/data/domain/public-suffix/XN--4DBRK0CE.php index 55e7be2d..5485a687 100644 --- a/data/domain/public-suffix/XN--4DBRK0CE.php +++ b/data/domain/public-suffix/XN--4DBRK0CE.php @@ -2,8 +2,12 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'אקדמיה.ישראל', - 'ישוב.ישראל', - 'צהל.ישראל', - 'ממשל.ישראל', + 'exceptions' => [], + 'rules' => [ + 'XN--4DBGDTY6C.XN--4DBRK0CE', + 'XN--5DBHL8D.XN--4DBRK0CE', + 'XN--8DBQ2A.XN--4DBRK0CE', + 'XN--HEBDA8B.XN--4DBRK0CE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/XN--90A3AC.php b/data/domain/public-suffix/XN--90A3AC.php index d25b9110..d0c5ee73 100644 --- a/data/domain/public-suffix/XN--90A3AC.php +++ b/data/domain/public-suffix/XN--90A3AC.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'АК.СРБ', - 'ОБР.СРБ', - 'ОД.СРБ', - 'ОРГ.СРБ', - 'ПР.СРБ', - 'УПР.СРБ', + 'exceptions' => [], + 'rules' => [ + 'XN--80AU.XN--90A3AC', + 'XN--90AZH.XN--90A3AC', + 'XN--C1AVG.XN--90A3AC', + 'XN--D1AT.XN--90A3AC', + 'XN--O1AC.XN--90A3AC', + 'XN--O1ACH.XN--90A3AC', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/XN--J6W193G.php b/data/domain/public-suffix/XN--J6W193G.php index 2d428233..e2744dbf 100644 --- a/data/domain/public-suffix/XN--J6W193G.php +++ b/data/domain/public-suffix/XN--J6W193G.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - '個人.香港', - '公司.香港', - '政府.香港', - '教育.香港', - '組織.香港', - '網絡.香港', + 'exceptions' => [], + 'rules' => [ + 'XN--55QX5D.XN--J6W193G', + 'XN--GMQW5A.XN--J6W193G', + 'XN--MXTQ1M.XN--J6W193G', + 'XN--OD0ALG.XN--J6W193G', + 'XN--UC0ATV.XN--J6W193G', + 'XN--WCVS22D.XN--J6W193G', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/XN--O3CW4H.php b/data/domain/public-suffix/XN--O3CW4H.php index b7c58670..c8486847 100644 --- a/data/domain/public-suffix/XN--O3CW4H.php +++ b/data/domain/public-suffix/XN--O3CW4H.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'ทหาร.ไทย', - 'ธุรกิจ.ไทย', - 'เน็ต.ไทย', - 'รัฐบาล.ไทย', - 'ศึกษา.ไทย', - 'องค์กร.ไทย', + 'exceptions' => [], + 'rules' => [ + 'XN--12C1FE0BR.XN--O3CW4H', + 'XN--12CFI8IXB8L.XN--O3CW4H', + 'XN--12CO0C3B4EVA.XN--O3CW4H', + 'XN--H3CUZK1DI.XN--O3CW4H', + 'XN--M3CH0J3A.XN--O3CW4H', + 'XN--O3CYX2A.XN--O3CW4H', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/XN--P1ACF.php b/data/domain/public-suffix/XN--P1ACF.php new file mode 100644 index 00000000..db9d311f --- /dev/null +++ b/data/domain/public-suffix/XN--P1ACF.php @@ -0,0 +1,19 @@ + [], + 'rules' => [ + 'XN--41A.XN--P1ACF', + 'XN--80AAA0CVAC.XN--P1ACF', + 'XN--90A1AF.XN--P1ACF', + 'XN--90AMC.XN--P1ACF', + 'XN--C1AVG.XN--P1ACF', + 'XN--H1AHN.XN--P1ACF', + 'XN--H1ALIZ.XN--P1ACF', + 'XN--J1ADP.XN--P1ACF', + 'XN--J1AEF.XN--P1ACF', + 'XN--J1AEL8B.XN--P1ACF', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/XYZ.php b/data/domain/public-suffix/XYZ.php new file mode 100644 index 00000000..1f3635fe --- /dev/null +++ b/data/domain/public-suffix/XYZ.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'BOTDASH.XYZ', + 'CAFFEINE.XYZ', + ], + 'wildcards' => [ + 'TELEBIT.XYZ', + ], +]; diff --git a/data/domain/public-suffix/YE.php b/data/domain/public-suffix/YE.php index ffd860a2..cc26dca1 100644 --- a/data/domain/public-suffix/YE.php +++ b/data/domain/public-suffix/YE.php @@ -2,10 +2,14 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'COM.YE', - 'EDU.YE', - 'GOV.YE', - 'MIL.YE', - 'NET.YE', - 'ORG.YE', + 'exceptions' => [], + 'rules' => [ + 'COM.YE', + 'EDU.YE', + 'GOV.YE', + 'MIL.YE', + 'NET.YE', + 'ORG.YE', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/YT.php b/data/domain/public-suffix/YT.php new file mode 100644 index 00000000..2abcf9cf --- /dev/null +++ b/data/domain/public-suffix/YT.php @@ -0,0 +1,10 @@ + [], + 'rules' => [ + 'ORG.YT', + ], + 'wildcards' => [], +]; diff --git a/data/domain/public-suffix/ZA.php b/data/domain/public-suffix/ZA.php index 5b67d0f4..57527887 100644 --- a/data/domain/public-suffix/ZA.php +++ b/data/domain/public-suffix/ZA.php @@ -2,22 +2,26 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.ZA', - 'AGRIC.ZA', - 'ALT.ZA', - 'CO.ZA', - 'EDU.ZA', - 'GOV.ZA', - 'GRONDAR.ZA', - 'LAW.ZA', - 'MIL.ZA', - 'NET.ZA', - 'NGO.ZA', - 'NIC.ZA', - 'NIS.ZA', - 'NOM.ZA', - 'ORG.ZA', - 'SCHOOL.ZA', - 'TM.ZA', - 'WEB.ZA', + 'exceptions' => [], + 'rules' => [ + 'AC.ZA', + 'AGRIC.ZA', + 'ALT.ZA', + 'CO.ZA', + 'EDU.ZA', + 'GOV.ZA', + 'GRONDAR.ZA', + 'LAW.ZA', + 'MIL.ZA', + 'NET.ZA', + 'NGO.ZA', + 'NIC.ZA', + 'NIS.ZA', + 'NOM.ZA', + 'ORG.ZA', + 'SCHOOL.ZA', + 'TM.ZA', + 'WEB.ZA', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ZM.php b/data/domain/public-suffix/ZM.php index c2667617..a8118b57 100644 --- a/data/domain/public-suffix/ZM.php +++ b/data/domain/public-suffix/ZM.php @@ -2,15 +2,19 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.ZM', - 'BIZ.ZM', - 'CO.ZM', - 'COM.ZM', - 'EDU.ZM', - 'GOV.ZM', - 'INFO.ZM', - 'MIL.ZM', - 'NET.ZM', - 'ORG.ZM', - 'SCH.ZM', + 'exceptions' => [], + 'rules' => [ + 'AC.ZM', + 'BIZ.ZM', + 'CO.ZM', + 'COM.ZM', + 'EDU.ZM', + 'GOV.ZM', + 'INFO.ZM', + 'MIL.ZM', + 'NET.ZM', + 'ORG.ZM', + 'SCH.ZM', + ], + 'wildcards' => [], ]; diff --git a/data/domain/public-suffix/ZONE.php b/data/domain/public-suffix/ZONE.php new file mode 100644 index 00000000..2c50b7da --- /dev/null +++ b/data/domain/public-suffix/ZONE.php @@ -0,0 +1,13 @@ + [], + 'rules' => [ + 'LIMA.ZONE', + 'STACKIT.ZONE', + ], + 'wildcards' => [ + 'TRITON.ZONE', + ], +]; diff --git a/data/domain/public-suffix/ZW.php b/data/domain/public-suffix/ZW.php index f86879ea..dc65d1f6 100644 --- a/data/domain/public-suffix/ZW.php +++ b/data/domain/public-suffix/ZW.php @@ -2,9 +2,13 @@ // SPDX-FileCopyrightText: 2007–22 Mozilla Foundation // SPDX-License-Identifier: MPL-2.0-no-copyleft-exception return [ - 'AC.ZW', - 'CO.ZW', - 'GOV.ZW', - 'MIL.ZW', - 'ORG.ZW', + 'exceptions' => [], + 'rules' => [ + 'AC.ZW', + 'CO.ZW', + 'GOV.ZW', + 'MIL.ZW', + 'ORG.ZW', + ], + 'wildcards' => [], ]; diff --git a/data/domain/tld.php b/data/domain/tld.php index 6cd99ff8..2be98cea 100644 --- a/data/domain/tld.php +++ b/data/domain/tld.php @@ -1252,7 +1252,6 @@ return [ 'WINE', 'WINNERS', 'WME', - 'WOLTERSKLUWER', 'WOODSIDE', 'WORK', 'WORKS', diff --git a/docs/validators.md b/docs/validators.md index 958731a6..3cef7462 100644 --- a/docs/validators.md +++ b/docs/validators.md @@ -337,7 +337,7 @@ In this page you will find a list of validators by their category. [Property]: validators/Property.md "Validates an object property against a given validator." [PropertyExists]: validators/PropertyExists.md "Validates if an object property exists." [PropertyOptional]: validators/PropertyOptional.md "Validates an object property against a given validator only if the property exists." -[PublicDomainSuffix]: validators/PublicDomainSuffix.md "Validates whether the input is a public ICANN domain suffix." +[PublicDomainSuffix]: validators/PublicDomainSuffix.md "Validates whether the input is a public domain suffix from the Public Suffix List, including wildcard, exception, ICANN and private section rules." [Punct]: validators/Punct.md "Validates whether the input composed by only punctuation characters." [Readable]: validators/Readable.md "Validates if the given data is a file exists and is readable." [Regex]: validators/Regex.md "Validates whether the input matches a defined regular expression." diff --git a/docs/validators/PublicDomainSuffix.md b/docs/validators/PublicDomainSuffix.md index 260cb29a..11b61a15 100644 --- a/docs/validators/PublicDomainSuffix.md +++ b/docs/validators/PublicDomainSuffix.md @@ -9,20 +9,26 @@ SPDX-FileContributor: Henrique Moody - `PublicDomainSuffix()` -Validates whether the input is a public ICANN domain suffix. +Validates whether the input is a public domain suffix from the [Public Suffix List](https://publicsuffix.org/list/), including wildcard, exception, ICANN and private section rules. ```php v::publicDomainSuffix()->assert('co.uk'); // Validation passes successfully -v::publicDomainSuffix()->assert('CO.UK'); +v::publicDomainSuffix()->assert('co.ck'); // Validation passes successfully -v::publicDomainSuffix()->assert('nom.br'); +v::publicDomainSuffix()->assert('www.ck'); +// → "www.ck" must be a public domain suffix + +v::publicDomainSuffix()->assert('myname.nom.br'); // Validation passes successfully v::publicDomainSuffix()->assert('invalid.com'); // → "invalid.com" must be a public domain suffix + +v::publicDomainSuffix()->assert('blogspot.com'); +// Validation passes successfully ``` This validator will not match top level domains such as `tk`. diff --git a/src-dev/Commands/UpdateDomainSuffixesCommand.php b/src-dev/Commands/UpdateDomainSuffixesCommand.php index 475b19d1..0f310089 100644 --- a/src-dev/Commands/UpdateDomainSuffixesCommand.php +++ b/src-dev/Commands/UpdateDomainSuffixesCommand.php @@ -29,12 +29,12 @@ use function idn_to_ascii; use function is_dir; use function mb_strtoupper; use function mkdir; -use function preg_match; use function rmdir; use function sort; use function sprintf; -use function str_replace; use function str_starts_with; +use function strrpos; +use function substr; use function trim; use function unlink; @@ -108,12 +108,13 @@ final class UpdateDomainSuffixesCommand extends Command } $punycodedTld = idn_to_ascii($tld, IDNA_DEFAULT, INTL_IDNA_VARIANT_UTS46) ?: $tld; + $filenameTld = mb_strtoupper($punycodedTld, 'UTF-8'); $this->dataSaver->save( $suffixList, '2007–22 Mozilla Foundation', 'MPL-2.0-no-copyleft-exception', - sprintf('domain/public-suffix/%s.php', $punycodedTld), + sprintf('domain/public-suffix/%s.php', $filenameTld), ); $progressBar->advance(); @@ -127,66 +128,68 @@ final class UpdateDomainSuffixesCommand extends Command return Command::SUCCESS; } - /** @return array> */ + /** @return array, wildcards: array, exceptions: array}> */ private function parseTldsList(string $content): array { $lines = explode("\n", $content); $suffixes = []; - $icannOnly = true; foreach ($lines as $line) { $line = trim($line); - // Check if we've reached the end of ICANN domains - if ($line === '// ===END ICANN DOMAINS===') { - $icannOnly = false; - } - - // Skip comments and empty lines if ($line === '' || str_starts_with($line, '//')) { continue; } - // Process the suffix - $suffix = $line; + $type = 'rules'; + if (str_starts_with($line, '*.')) { + $type = 'wildcards'; + $line = substr($line, 2); + } elseif (str_starts_with($line, '!')) { + $type = 'exceptions'; + $line = substr($line, 1); + } - // Remove wildcards and exceptions - $suffix = str_replace('*.', '', $suffix); - $suffix = str_replace('!', '', $suffix); - - // Convert to uppercase (using multibyte for international characters) - $suffix = mb_strtoupper($suffix, 'UTF-8'); - - // Split into TLD and prefix - if (!preg_match('/^([^.]+)$|^(.+)\.([^.]+)$/', $suffix, $matches)) { + $suffix = $this->normalizeRule($line); + $separator = strrpos($suffix, '.'); + if ($separator === false && $type !== 'wildcards') { continue; } - if (isset($matches[3])) { - // Has a prefix - $tld = $matches[3]; - $prefix = $matches[2]; - - if (!isset($suffixes[$tld])) { - $suffixes[$tld] = []; - } - - // Only add ICANN domains - if ($icannOnly) { - $suffixes[$tld][] = $prefix . '.' . $tld; - } + if ($separator === false) { + $tld = $suffix; } else { - // Just a TLD - $tld = $matches[1]; - if (!isset($suffixes[$tld])) { - $suffixes[$tld] = []; - } + $tld = substr($suffix, $separator + 1); + } + + if (!isset($suffixes[$tld])) { + $suffixes[$tld] = [ + 'rules' => [], + 'wildcards' => [], + 'exceptions' => [], + ]; + } + + $suffixes[$tld][$type][] = $suffix; + } + + foreach ($suffixes as &$rulesByType) { + foreach ($rulesByType as &$rules) { + $rules = array_unique($rules); + sort($rules); } } return $suffixes; } + private function normalizeRule(string $rule): string + { + $asciiRule = idn_to_ascii($rule, IDNA_DEFAULT, INTL_IDNA_VARIANT_UTS46) ?: $rule; + + return mb_strtoupper($asciiRule, 'UTF-8'); + } + private function removeDirectory(string $directory): void { if (!is_dir($directory)) { diff --git a/src/Validators/PublicDomainSuffix.php b/src/Validators/PublicDomainSuffix.php index ac483476..002f88d8 100644 --- a/src/Validators/PublicDomainSuffix.php +++ b/src/Validators/PublicDomainSuffix.php @@ -12,7 +12,6 @@ declare(strict_types=1); namespace Respect\Validation\Validators; use Attribute; -use Respect\Validation\Helpers\CanValidateUndefined; use Respect\Validation\Helpers\DataLoader; use Respect\Validation\Message\Template; use Respect\Validation\Validators\Core\Simple; @@ -22,8 +21,12 @@ use function explode; use function idn_to_ascii; use function in_array; use function is_scalar; +use function mb_strlen; +use function mb_strpos; use function mb_strtoupper; -use function strtoupper; +use function mb_substr; +use function str_contains; +use function str_ends_with; use const IDNA_DEFAULT; use const INTL_IDNA_VARIANT_UTS46; @@ -35,26 +38,138 @@ use const INTL_IDNA_VARIANT_UTS46; )] final class PublicDomainSuffix extends Simple { - use CanValidateUndefined; - public function isValid(mixed $input): bool { if (!is_scalar($input)) { return false; } - $parts = explode('.', (string) $input); + $rawInput = (string) $input; + if ($rawInput === '') { + return true; + } + + $unicodeInput = $this->normalizeUnicodeInput($rawInput); + $normalizedInput = $this->normalizeInput($rawInput); + + if (!str_contains($normalizedInput, '.')) { + return false; + } + + $parts = explode('.', $normalizedInput); $tld = array_pop($parts); if ($tld === '') { + return false; + } + + $ruleMap = $this->loadRuleMap($tld); + if ($ruleMap === null) { + return false; + } + + if ($this->isValidWithRuleMap($normalizedInput, $ruleMap)) { return true; } - $punycodedTld = idn_to_ascii($tld, IDNA_DEFAULT, INTL_IDNA_VARIANT_UTS46) ?: $tld; - $dataSource = DataLoader::load('domain/public-suffix/' . mb_strtoupper($punycodedTld) . '.php'); - if ($this->isUndefined($input) && $dataSource === []) { + if ($normalizedInput === $unicodeInput) { + return false; + } + + return $this->isValidWithRuleMap($unicodeInput, $ruleMap); + } + + /** @param array{rules: list, wildcards: list, exceptions: list} $rules */ + private function isValidWithRuleMap(string $normalizedInput, array $rules): bool + { + if (in_array($normalizedInput, $rules['exceptions'], true)) { + return false; + } + + if (in_array($normalizedInput, $rules['rules'], true)) { return true; } - return in_array(strtoupper((string) $input), $dataSource, true); + if ($this->matchesWildcardRule($normalizedInput, $rules['wildcards'])) { + return true; + } + + return $this->matchesExceptionParentRule($normalizedInput, $rules['exceptions']); + } + + private function normalizeInput(string $input): string + { + $asciiInput = idn_to_ascii($input, IDNA_DEFAULT, INTL_IDNA_VARIANT_UTS46); + if ($asciiInput === false) { + return $this->normalizeUnicodeInput($input); + } + + return mb_strtoupper($asciiInput, 'UTF-8'); + } + + private function normalizeUnicodeInput(string $input): string + { + return mb_strtoupper($input, 'UTF-8'); + } + + /** + * @return array{ + * rules: list, + * wildcards: list, + * exceptions: list, + * }|null + */ + private function loadRuleMap(string $tld): array|null + { + $rules = DataLoader::load('domain/public-suffix/' . $tld . '.php'); + if ($rules === []) { + return null; + } + + /** @var array{rules: list, wildcards: list, exceptions: list} $ruleMap */ + $ruleMap = $rules; + + return $ruleMap; + } + + /** @param list $wildcards */ + private function matchesWildcardRule(string $normalizedInput, array $wildcards): bool + { + foreach ($wildcards as $wildcardRule) { + if ($this->hasExactlyOneMoreLabel($normalizedInput, $wildcardRule)) { + return true; + } + } + + return false; + } + + /** @param list $exceptions */ + private function matchesExceptionParentRule(string $normalizedInput, array $exceptions): bool + { + foreach ($exceptions as $exceptionRule) { + $separatorPosition = mb_strpos($exceptionRule, '.'); + if ($separatorPosition === false) { + continue; + } + + $exceptionParent = mb_substr($exceptionRule, $separatorPosition + 1); + if ($normalizedInput === $exceptionParent) { + return true; + } + } + + return false; + } + + private function hasExactlyOneMoreLabel(string $value, string $suffix): bool + { + if ($value === $suffix || !str_ends_with($value, '.' . $suffix)) { + return false; + } + + $prefixLength = mb_strlen($value, 'UTF-8') - mb_strlen($suffix, 'UTF-8') - 1; + $prefix = mb_substr($value, 0, $prefixLength); + + return $prefix !== '' && !str_contains($prefix, '.'); } } diff --git a/tests/feature/Validators/PublicDomainSuffixTest.php b/tests/feature/Validators/PublicDomainSuffixTest.php new file mode 100644 index 00000000..7685e776 --- /dev/null +++ b/tests/feature/Validators/PublicDomainSuffixTest.php @@ -0,0 +1,49 @@ + + */ + +declare(strict_types=1); + +test('rejects non-public suffix values', catchMessage( + fn() => v::publicDomainSuffix()->assert('invalid.com'), + fn(string $message) => expect($message)->toBe('"invalid.com" must be a public domain suffix'), +)); + +test('accepts exact PSL rules', catchMessage( + fn() => v::not(v::publicDomainSuffix())->assert('co.uk'), + fn(string $message) => expect($message)->toBe('"co.uk" must not be a public domain suffix'), +)); + +test('accepts PSL rules case-insensitively', catchMessage( + fn() => v::not(v::publicDomainSuffix())->assert('CO.UK'), + fn(string $message) => expect($message)->toBe('"CO.UK" must not be a public domain suffix'), +)); + +test('accepts wildcard matches with one additional label', catchFullMessage( + fn() => v::not(v::publicDomainSuffix())->assert('co.ck'), + fn(string $fullMessage) => expect($fullMessage)->toBe('- "co.ck" must not be a public domain suffix'), +)); + +test('rejects wildcard exceptions from the list', catchFullMessage( + fn() => v::publicDomainSuffix()->assert('www.ck'), + fn(string $fullMessage) => expect($fullMessage)->toBe('- "www.ck" must be a public domain suffix'), +)); + +test('accepts private suffix entries from the PSL', catchMessage( + fn() => v::not(v::publicDomainSuffix())->assert('blogspot.com'), + fn(string $message) => expect($message)->toBe('"blogspot.com" must not be a public domain suffix'), +)); + +test('does not treat TLD-only values as public suffixes', catchMessage( + fn() => v::publicDomainSuffix()->assert('tk'), + fn(string $message) => expect($message)->toBe('"tk" must be a public domain suffix'), +)); + +test('accepts IDN PSL rules', catchMessage( + fn() => v::not(v::publicDomainSuffix())->assert('個人.香港'), + fn(string $message) => expect($message)->toBe('"個人.香港" must not be a public domain suffix'), +)); diff --git a/tests/unit/Validators/PublicDomainSuffixTest.php b/tests/unit/Validators/PublicDomainSuffixTest.php index 95496451..7ba25685 100644 --- a/tests/unit/Validators/PublicDomainSuffixTest.php +++ b/tests/unit/Validators/PublicDomainSuffixTest.php @@ -13,6 +13,9 @@ namespace Respect\Validation\Validators; use PHPUnit\Framework\Attributes\CoversClass; use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; +use ReflectionClass; +use Respect\Validation\Helpers\DataLoader; use Respect\Validation\Test\RuleTestCase; use stdClass; @@ -20,6 +23,11 @@ use stdClass; #[CoversClass(PublicDomainSuffix::class)] final class PublicDomainSuffixTest extends RuleTestCase { + protected function setUp(): void + { + $this->setDataLoaderCache([]); + } + /** @return iterable */ public static function providerForValidInput(): iterable { @@ -28,8 +36,10 @@ final class PublicDomainSuffixTest extends RuleTestCase return [ [$validator, ''], [$validator, 'co.uk'], - [$validator, 'nom.br'], - [$validator, 'WWW.CK'], + [$validator, 'CO.UK'], + [$validator, 'co.ck'], + [$validator, 'com.br'], + [$validator, 'blogspot.com'], [$validator, 'ทหาร.ไทย'], [$validator, '個人.香港'], ]; @@ -47,7 +57,65 @@ final class PublicDomainSuffixTest extends RuleTestCase [$validator, 'NONONONONONONONONON'], [$validator, 'NONONONONONONONONON.uk'], [$validator, 'invalid.com'], + [$validator, 'www.ck'], + [$validator, 'nom.br'], [$validator, 'tk'], ]; } + + #[Test] + public function shouldRejectInputWithEmptyTld(): void + { + self::assertInvalidInput(new PublicDomainSuffix(), 'co.'); + } + + #[Test] + public function shouldFallbackToUnicodeWhenAsciiNormalizationFails(): void + { + $this->setDataLoaderCache([ + 'domain/public-suffix/ZZTEST.php' => [ + 'rules' => [], + 'wildcards' => [], + 'exceptions' => [], + ], + ]); + + self::assertInvalidInput(new PublicDomainSuffix(), 'a..zztest'); + } + + #[Test] + public function shouldValidateUsingUnicodeRuleOnSecondPass(): void + { + $this->setDataLoaderCache([ + 'domain/public-suffix/XN--J6W193G.php' => [ + 'rules' => ['個人.香港'], + 'wildcards' => [], + 'exceptions' => [], + ], + ]); + + self::assertValidInput(new PublicDomainSuffix(), '個人.香港'); + } + + #[Test] + public function shouldValidateParentOfExceptionAndIgnoreMalformedExceptionRule(): void + { + $this->setDataLoaderCache([ + 'domain/public-suffix/ZZTEST.php' => [ + 'rules' => [], + 'wildcards' => ['CITY.ZZTEST'], + 'exceptions' => ['MALFORMED', 'A.CITY.ZZTEST'], + ], + ]); + + self::assertValidInput(new PublicDomainSuffix(), 'city.zztest'); + } + + /** @param array, wildcards: list, exceptions: list}> $cache */ + private function setDataLoaderCache(array $cache): void + { + $reflection = new ReflectionClass(DataLoader::class); + $property = $reflection->getProperty('runtimeCache'); + $property->setValue(null, $cache); + } }