# Copyright (C) 2013 The Libphonenumber Authors

# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at

# http://www.apache.org/licenses/LICENSE-2.0

# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Prefixes from http://www.ofca.gov.hk/mobile/en/industry_focus/telecommunications/portability/numbering/index.html

852510|China Mobile
852511|New World Mobility
852512|China Mobile
852513|China Mobile
852514|PCCW Mobile
8525149|Truphone
852516|China Mobile
852517|China Mobile
852518|PCCW Mobile
852519|3
852521|1O1O / One2Free
8525230|PCCW Mobile
8525231|PCCW Mobile
8525232|PCCW Mobile
8525233|PCCW Mobile
852524|1O1O / One2Free
852526|China Mobile
852530|China Mobile
852531|China Mobile
852532|PCCW Mobile
852533|3
852534|China Mobile
852536|PCCW Mobile
852537|China Mobile
852538|China Unicom
852539|China Mobile
852540|New World Mobility
852541|PCCW Mobile
852542|China Mobile
852543|1O1O / One2Free
852544|China Mobile
852546|3
852547|1O1O / One2Free
852548|China Mobile
852549|China Mobile
852550|SmarTone
852551|China Mobile
852552|1O1O / One2Free
852553|China Mobile
8525540|New World Mobility
8525541|New World Mobility
8525542|New World Mobility
8525543|New World Mobility
8525544|New World Mobility
8525545|New World Mobility
8525546|New World Mobility
8525547|New World Mobility
8525548|New World Mobility
852556|3
852557|China Mobile
852558|PCCW Mobile
852559|SmarTone
852560|China Mobile
852561|China Mobile
852562|China Mobile
852563|3
852564|China Mobile
852566|3
852568|1O1O / One2Free
852569|3
8525900|PCCW Mobile
8525901|PCCW Mobile
8525902|PCCW Mobile
8525903|PCCW Mobile
8525904|PCCW Mobile
8525905|PCCW Mobile
852591|1O1O / One2Free
852592|1O1O / One2Free
852593|China Mobile
852594|PCCW Mobile
852596|3
852597|3
852598|China Mobile
852599|1O1O / One2Free
852601|SmarTone
852602|1O1O / One2Free
852603|1O1O / One2Free
852604|3
852605|1O1O / One2Free
852606|China Mobile
852607|3
852608|3
852609|China Mobile
852610|3
852611|SmarTone
852612|PCCW Mobile
852613|1O1O / One2Free
852614|1O1O / One2Free
852615|China Mobile
852616|1O1O / One2Free
852617|1O1O / One2Free
852618|PCCW Mobile
852619|3
852620|3
852621|China Mobile
852622|China Mobile
852623|China Mobile
852624|CM Mobile
852625|PCCW Mobile
852627|3
852628|1O1O / One2Free
852629|1O1O / One2Free
852630|PCCW Mobile
852631|3
852632|SmarTone
852633|3
852634|3
852635|China Mobile
852637|1O1O / One2Free
852638|PCCW Mobile
852639|1O1O / One2Free
852640|3
852641|1O1O / One2Free
852642|1O1O / One2Free
852643|China Mobile
852644|PCCW Mobile
8526450|CITIC
85264510|CITIC
85264511|CITIC
8526452|CITIC
85264535|CITIC
85264536|CITIC
85264537|CITIC
85264538|CITIC
85264539|CITIC
8526454|CITIC
8526455|CITIC
8526456|CITIC
8526457|CITIC
8526458|CITIC
8526459|CITIC
852646|SmarTone
852647|3
852648|China Mobile
852649|PCCW Mobile
852650|3
852651|China-Hongkong Telecom
852652|China Unicom
852653|1O1O / One2Free
852654|1O1O / One2Free
852655|China Unicom
852656|China Unicom
852657|China Mobile
852658|China Mobile
852659|1O1O / One2Free
852660|PCCW Mobile
852661|China Unicom
852662|PCCW Mobile
852663|China Unicom
852664|China Mobile
852665|1O1O / One2Free
852667|China Mobile
852668|3
852669|PCCW Mobile
852670|China Mobile
852671|1O1O / One2Free
852672|China Unicom
852673|China Mobile
852674|China Mobile
852675|1O1O / One2Free
852676|China Mobile
852677|1O1O / One2Free
852679|3
852680|PCCW Mobile
852681|China Unicom
852682|1O1O / One2Free
852683|CM Mobile
852684|China Mobile
852685|China Mobile
852687|China Mobile
852688|China Unicom
852689|1O1O / One2Free
852690|3
852691|China Mobile
852692|PCCW Mobile
852693|China Mobile
852694|China Mobile
852695|China Mobile
852696|CM Mobile
852697|1O1O / One2Free
852698|CM Mobile
852699|China Mobile
852901|SmarTone
852902|1O1O / One2Free
852903|1O1O / One2Free
852904|3
852905|CM Mobile
852906|China Mobile
852907|PCCW Mobile
852908|1O1O / One2Free
852909|1O1O / One2Free
852910|1O1O / One2Free
852912|3
852913|SmarTone
852914|China Mobile
852915|1O1O / One2Free
852916|SmarTone
852917|SmarTone
852918|1O1O / One2Free
852919|1O1O / One2Free
852920|China Mobile
852921|1O1O / One2Free
852922|SmarTone
852923|PCCW Mobile
852924|SmarTone
852925|1O1O / One2Free
852926|1O1O / One2Free
852927|PCCW Mobile
852928|3
852930|1O1O / One2Free
852931|SmarTone
852932|3
852933|1O1O / One2Free
852934|China Mobile
852935|3
852936|3
852937|3
852938|SmarTone
852940|1O1O / One2Free
852941|3
852942|3
852943|SmarTone
852944|SmarTone
852945|SmarTone
852946|1O1O / One2Free
852947|3
852948|3
852949|3
852950|3
852951|China Mobile
852952|PCCW Mobile
852953|1O1O / One2Free
852954|SmarTone
852955|1O1O / One2Free
852956|China Unicom
852957|3
852958|China Mobile
852960|China Mobile
852961|1O1O / One2Free
852962|1O1O / One2Free
852963|3
852964|PCCW Mobile
852965|1O1O / One2Free
852966|SmarTone
852967|3
852968|SmarTone
852969|China-Hongkong Telecom
852970|3
852971|China Mobile
852972|SmarTone
852973|SmarTone
852974|3
852975|3
852976|1O1O / One2Free
852977|PCCW Mobile
852978|1O1O / One2Free
852979|China Mobile
852980|PCCW Mobile
852981|3
852982|3
852983|3
852984|SmarTone
852985|SmarTone
852986|SmarTone
852987|1O1O / One2Free
852988|1O1O / One2Free
